Czasami trzeba ograniczyć dostęp do strony internetowej. Rozwiązaniem o niezbyt wyszukanym poziomie zabezpieczeń, ale w wielu wypadkach wystarczającym jest utworzenie pliku .htaccess. Wejście na tak zabezpieczoną stronę kończy się wyświetleniem okienka pytającego o nazwę użytkownika i hasło. Podasz dobre to się dostaniesz na stronę.
Jak to zrobić? Potrzebne są 2 rzeczy:
1. Plik .htpasswd, który zaiwera informację o użytkownikach i hasłach. Plik zaczyna się od kropki. Systemy unix w ten sposób często przechowują pliki ukryte. Dodatkowo serwery www zabezpieczają się przed wysyłaniem plików o nazwie rozpoczynającej się na .ht*. Plik powinien zostać zapisany poza udostępnionym przez web katalogiem. Nazwę użytkownika i hasło można wygenerować na stronie. Np pod adresem http://www.4webhelp.net/us/password.php możeswz wprowadzić nazwę użytkownika i hasło, a strona wygeneruje linijke postaci:
rafal:10cK/rp.zt1jY
Tę linijkę należy zapisać w pliku .htpasswd gdzieś na dysku serwera (załóżmy że będzie to katalog (/home/web/.htpasswd).
2. Plik .htaccess informujący kto ma prawo oglądać wutrynę. Plik ten należy umieścić w katalogu, który chcesz chronić przed dostępem. Nazwa pliku również rozpoczyna się od kropki. Zawartość pliku może być następująca:
AuthUserFile /home/web/.htpasswd
AuthType Basic
AuthName „Witryna projektu ABC (w budowie)”
Require valid-user
Co oznaczają te linijki?
- AuthUserFile – gdzie znajduje się plik z hasłami
- AuthType – jaki rodzaj autoryzacji przeprowadzić – tutaj proste podanie nazwy użytkownika i hasła
- AuthName – tu można podać opisową nazwę do chronionego zasobu
- Require – kto uzyska dostęp – u nas każdy użytkownik wymieniony w pliku z hasłami
Uwaga. Plik z hasłami można rónież utworzyć za pomocą komendy wchodzącej w skład pakietu Apache – htpasswd
Więcej na ten temat (ale po angielsku znajdziesz również tu: http://www.elated.com/articles/password-protecting-your-pages-with-htaccess/ )