Hasło poprzez .htaccess i .htpasswd

Czasem przydaje się zabezpieczenie hasłem pewnego katalogu na serwerze WWW. Przydatny do tego jest już wcześniej wspominany plik .htaccess – dla serwera Apache. Aby ograniczyć dostęp do katalogu/strony tylko osobom znającym hasło, należy w zabezpieczanym katalogu umieścić plik .htaccess zwierający:

AuthName "Podaj haslo"
AuthType Basic
AuthUserFile /sciezka_do_katalogu/.htpasswd
Require valid-user

Gdzie AuthName może być dowolnym tekstem. W linijce /sciezka_do_katalogu/.htpasswd należy podać pełną ścieżkę do pliku .htpasswd o którym będzie za chwilkę.

Następną czynnością jest utworzenie pliku .htpasswd, zawierającego nazwy użytkowników i ich hasła. Plik ten tworzy się w postaci:

username:password

gdzie password jest odpowiednio zakodowane. Przykładowo dla użytkownika pawel i hasla mojehaslo, plik .htpasswd przyjmie postać:

pawel:8OytGCYCAPbS6

Plik .htpasswd powinien być trzymany poza katalogiem web root, czyli tam gdzie zwykły użytkownik nie ma dostępu. Hasła do pliku .htaccess można zakodować przez htaccess password generator.

Od teraz każda próba wejścia do zabezpieczonego katalogu wywoła monit o hasło:

401 Authorization Required

Jeśli hasła nie znamy pokaże się nam komunikat 401 Authorization Required :)