Możliwość ograniczenia dostępu do katalogu jest szczególnie istotna w sytuacji, gdy część opublikowanych informacji nie powinna być dostępna dla wszystkich, a jedynie dla wybranych i wskazanych użytkowników (np. dokumenty dla pracowników, projekty, materiały szkoleniowe itp.)
W ramach serwera hostingowego możesz ograniczać dostęp do swoich katalogów lub stron internetowych. Na przykładzie serwera home.pl pokażemy jak korzystać z plików .htaccess i .htpasswd.
1. Należy utworzyć pliki
Do utworzenia plików .htaccess i .htpasswd polecam program Notepad++ dostępny pod adresem www.notepad-plus-plus.org
Notepad++ to rozbudowany edytor tekstu (i zamiennik systemowego Notatnika) oparty na projekcie Scintilla, rozpowszechniany na licencji GNU GPL.
Program jest napisany w czystym C++ z wykorzystaniem Win32 API przez programistę o pseudonimie Don HO. Interfejs programu jest dostępny w wielu językach – także po polsku.
Dodatkowo program obsługuje: ASP, Ada, ASCII art, Assembly, AutoIt, BAT, C, C#, C++, Caml, CSS, doxygen, FORTRAN, HTML, Haskell, Java, javascript, KiXtart, Lisp, Lua, makefile, Matlab, Objective-C, Pascal, Perl, PHP, PostScript, Python, Ruby, Scheme, Unix Shell Script, Smalltalk, SQL, Tcl, TeX, Verilog, VHDL, VB/VBScript, XML.
2. Konfiguracja pliku .htaccess
Plik .htaccess to domyślna nazwa pliku konfiguracyjnego serwera Apache, który umożliwia zmianę konfiguracji dla konkretnego katalogu. Może zostać utworzony za pomocą dowolnego edytora, np. Notatnika w Windows lub Emacs w Linuksie.
AuthName "Password"
AuthType Basic
AuthUserFile ../.htpasswd
Require valid-user
Gdzie „AuthName” może być dowolnym tekstem (np. informacja o konieczności wpisania hasła dostępu).
Natomiast w linii „AuthUserFile” należy podać pełną ścieżkę do pliku .htpasswd
WAŻNE! Podana powyżej scieżka do pliku .htpasswd nazywana jest ścieżką względną. Oznacza to, że jeśli plik .htpasswd znajduje się w strukturze w katalogu wyżej, niż plik .htaccess, niezbędne jest podanie: AuthUserFile ../.htpasswd
3. Konfiguracja pliku .htpasswd
Następną rzecz jaką musimy wykonać jest utworzenie pliku .htpasswd, który będzie zawierał nazwy użytkowników oraz ich hasła dostępu. Zawartość pliku .htpasswd tworzy się według poniższego schematu:
użytkownik:hasło
admin:123456
kowalski:7c4@=4Nsn1
Odpowiednie hasła do pliku .htpasswd możesz zakodować pod adresem http://aspirine.org/htpasswd_en.html. Pamiętaj, aby na podanej stronie wybrać algorytm kodowania o nazwie „crypt()”.