Katalog na hasło
Pierwsza możliwość zabezpieczenia całego katalogu hasłem to skorzystanie z wbudowanego w apacza endżajnu mod_access i/lub mod_auth. Tworzymy plik .htaccess:
Order Deny,Allow
Allow from 192.168.0.4 192.168.0.67
Deny from all
AuthType Basic
AuthName "haselko"
AuthUserFile /xxx/passwords
AuthGroupFile /xxx/groups
Require group usersi
Satisfy Any
Taki zapis oznacza, że:
Pozwalamy 2 IPkom na dostęp do katalogu BEZ hasła.
Od reszty będzie wymagane hasło zapisane w pliku passwords oraz uczestnictwo w grupie userów "usersi", tak jak to jest zapisane w pliku groups.
Druga możliwość to wyciąganie pliku z katalogu za pomocą skryptu PHP, coś w stylu:
getfile.php?id=15
if (user==zalogowany) {
wyciągnij nazwę pliku o id=15 z bazy
wyślij odpowiedni header z typem pliku header('Content-type:...');
otwórz plik i wypisz go "na ekran" readfile();
}
else /dev/drzewo
oczywiście sam katalog z plikami znajduje się poza dostępem z zewnątrz lub jest zabezpieczony .htaccessem (patrz wyżej)