Curs Php-mysql

1. Protectia cu parola a unui director

Uneori este nevoie sa protejam accesul la un anumit director din site, dar sa accordam totusi accesul extern anumitor persoane. Pentru aceasta este utila adaugarea unei parole.
Exista mai multe metode de a realiza acest lucru, cu ajutorul limbajelor de programare web: PHP, ASP, Perl.... Aici va fi prezentat modul de parolare a unui director folosind fisierul ".htaccess".

In primul rand trebuie sa creati un fisier numit ".htpasswd", care va contine numele de utilizator si parola criptata, apoi în fisierul ".htaccess" este introdusa calea catre ".htpasswd".
Pentru utilizatorii de UNIX, iata cum puteti crea prin intermediul shell-ului un fisier htpasswd (cum puteti crea parola criptata):

[mar@www mar]# cd /var/www/domeniu_meu/privat/
[mar@www privat]# htpasswd -c .htpasswd username
New password:
Re-type new password:
Adding password for user username
[root@www privat]#
- "cd /var/www/domeniu_meu/privat/" - ne deplasam catre directorul pe care dorim sa-l protejam, aici "privat"
- "htpasswd -c .htpasswd username" - creaza un utilizator "username" dupa care vom fi întrebati de parola
Puteti adauga utilizatori noi care sa aiba acces la acelasi director prin intermediul comenzii "htpasswd .htpasswd utilizator2", de data aceasta însa nu mai folositi optiunea "-c".
Daca doriti sa vedeti rezultatul, deschideti cu un editor de text fisierul ".htpasswd", veti descoperi ceva de genul:
username:$1$tEOlbaw7$v/mlwlw/pv1e34dB2JuE.1
utilizator2:$1$tEOlhyw7$v/mlw5w/pv1d62d92JmM.2
Daca doriti sa anulati accesul unui utlizator, stergeti linia respectiva.

Dupa ce au fost astfel create "utilizator" si "parola" in .htpasswd, introduceti urmatorul cod in .htaccess:
AuthType basic
AuthName "Acest director este protejat"
AuthUserFile /usr/local/www/domeniu_meu/privat/.htpasswd
AuthGroupFile /dev/null
Require valid-user
- Unde "/usr/local/www/domeniu_meu/privat/.htpasswd" este calea catre fisierul .htpasswd, care poate fi oriunde pe server.
- Linia care incepe cu "AuthName" contine textul care va fi afisat în promterul de login.protejat.

.htaccess trebue pus in fisierul protejat


Pentru serverele Apache instalate in Windows, pentru crearea fisierului .htpasswd cu parola criptata, urmati urmatorii pasi:

- Fisierul cu parole ".htpasswd" va fi creat în acelasi director cu executabilul htpasswd.exe. Daca doriti puteti sa-l mutati în alta parte, dar sa specificati in ".htaccess" calea corecta catre acesta.
Daca ulterior veti dori sa adaugati si alti utilizatori pentru accesarea directorului protejat, scrieti aceeasi comanda, fara "-c".

Pentru ca aceasta modalitate de protectie cu parola sa functioneze asigurati-va ca în fisierul de configurare "httpd.conf" a serverului Apache aveti comanda "AllowOverride all" si nu (AllowOverride none) - in linia unde 'AllowOverride' este precedat de un comentariu (marcat cu #) despre .htaccess.

2. Protectia cu parola a unui fisier

Daca doriti, puteti proteja cu parola si un anumit fisier, folosind .htaccess.
Ca si in cazul protectiei directoarelor, explicata mai sus, si aici este nevoie de fisieru ".htpasswd" in care sunt trecute numele si parola criptata. Crearea acestui fisier se realizeaza la fel ca in exemplul prezentat mai sus.
Dupa ce ati creat fisierul .htpasswd, adaugati in ".htaccess" urmatoarele comenzi:

# protejarea cu parola a unui fisier
<Files fisier.ext>
AuthType Basic
AuthName "Prompt"
AuthUserFile /home/path/.htpasswd
Require valid-user
</Files>
- Unde "fisier.ext" este numele fisierului care va fi protejat, iar "/home/path/.htpasswd" este calea catre fisierul ".htpasswd".
Plasati fisierul .htaccess în directorul in care se afla fisierul protejat.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag se foloseste in <table> pentru a crea celula de tip "header"?
<thead> <th> <td>
<table><tr>
  <th>Title 1</th>
  <th>Title 2</th>
</tr></table>
Ce proprietate CSS seteaza distanta dintre randuri?
line-height word-spacing margin
.some_class {
  line-height: 150%;
}
Care functie deschide o noua fereastra.
alert() confirm() open()
document.getElementById("id_button").onclick = function(){
  window.open("http://coursesweb.net/");
}
Indicati functia PHP care returneaza un array cu numele fisierelor si directoarelor dintr-un director.
mkdir() scandir() readdir()
$ar_dir = scandir("dir_name");
var_export($ar_dir);
Care din urmatoarele forme a verbului "sleep" (a dormi) se foloseste pentru viitor?
sleeping slept will sleep
He will sleep there.
- El va dormi acolo.
Care din urmatoarele forme a verbului "dormir" (a dormi) se foloseste pentru viitor?
dormido dormirá durmiendo
Él dormirá allí.
- El va dormi acolo.
Protejare cu parole folosind .htaccess

Last accessed pages

  1. Viitor perfect si Viitorul perfect continuu - Future perfect and Continuous (21328)
  2. Obtine valoarea elementelor checkbox selectate intr-un formular (410)
  3. Mini-Vocabular Spaniol (2924)
  4. Prezentul continuu - Exercitii si teste incepatori (39012)
  5. Conditional IF in Limba Engleza - Fraze Conditionale (123465)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (976)
  2. Gramatica limbii engleze - Prezentare Generala (606)
  3. Coduri pt culori (543)
  4. Gramatica limbii spaniole. Indrumator si prezentare generala (481)
  5. Cursuri limba engleza gratuite si lectii online (440)