Una dintre sarcinile standard care poate fi rezolvată prin utilizarea .htaccess este restricționarea accesului la un anumit director de pe server. De exemplu, trebuie să acordați acces la un anume director vizitatorilor individuali, oferindu-le o autentificare și o parolă unice.
În directorul la care dorim să restricționăm accesul prin parolă, creăm un fișier .htaccess cu următoarele directive:
AuthType Basic
AuthName "Some Name"
AuthUserFile /home/uXXXXX/.htpasswd
require valid-user
Calea /home/uXXXX/ .htpasswd indică calea completă către fișierul cu parole de pe discul serverului nostru. Dacă, de exemplu, plasați fișierul .htpasswd (va conține parole) în directorul dvs. de acasă, unde ajungeți prin conectarea la server prin FTP, atunci calea către acest fișier va arăta ca /home/uXXXXX/.htpasswd , unde uXXXXX este numele site-urilor dvs. virtuale (de exemplu, u12345 ).
În directiva AuthUserFile specificăm calea absolută către fișierul cu login/parole, pe care o vom crea puțin mai târziu. Dacă creați fișierul .htaccess pe computer, și nu direct pe server folosind un editor de text, vă rugăm să rețineți că .htaccess trebuie transferat prin FTP strict în modul text (ASCII).
Creați un fișier cu parole. Fișierul cu parole ar trebui să conțină linii precum login: password . Parola trebuie criptată folosind algoritmul MD5. O modalitate de a crea un astfel de fișier este să folosiți programul inclus cu Apache – htpasswd (pe serverul nostru se află în directorul /usr/local/bin/ , calea completă este /usr/local/bin/htpasswd ).
Să ne uităm la cum să creați un fișier de parolă în shell-ul Unix direct pe server. Să mergem la shell și să executăm următoarele comenzi:
htpasswd -mbc .htpasswd user1 sNQ7j9oR2w
htpasswd .htpasswd user2
Adăugați user2 la fișierul .htpasswd existent și introduceți parola manual ca răspuns la cererea corespunzătoare a programului.
Dacă utilizați Windows și nu doriți să utilizați shell-ul unix pentru a genera parole, puteți descărca versiunea Windows a programului htpasswd de aici și puteți crea un fișier cu parole pe computer, apoi îl puteți încărca pe server. Dacă aveți deja instalată o versiune Windows de Apache, fișierul htpasswd.exe poate fi găsit în directorul Program Files\Apache Group\Apache\bin\ .
Deci, obțineți htpasswd.exe și utilizați-l pentru a genera parole ca aceasta:
htpasswd.exe -mc .htpasswd user1
creați un nou fișier de parole htpasswd.exe, parola și confirmarea acesteia vor fi solicitate interactiv
htpasswd.exe -m .htpasswd user2
adăugați utilizatorul user2 la fișierul de parole existent htpasswd.exe, solicitând parola în mod interactiv.
După ce toate conectările au fost create, fișierul trebuie să fie încărcat pe server.