Network Domain: serwer.pl
Serwer Name: test.serwer.pl
Katalogi
bin pliki wykonywalne
cgi-bin skrypty cgi
conf pliki konfiguracyjne
htdocs dokumenty oferowane przez serwer
icons ikony
logs informacja o bieżącym stanie serwera
module dodatkowe moduły
Katalog bin
ab program do pomiaru wydajności serwera
apachectl (httpd.exe) uruchamianie i zatrzymywanie serwera
htpasswd zarządzanie plikami tekstowymi z logami i hasłami
logresolve do przeglądania logów
Dyrektywy blokowe
VirtualHost umożliwia uruchomienie większej ilości niezależnych serwerów
Directory umożliwia ograniczenie zasięgu działania innych dyrektyw do katalogu
Files ograniczenie zasięgu do wybranego pliku
Location ograniczenie zasięgu do danych adresów URL
IfModule dyrektywa uaktywnia inne jeśli załadowany moduł
Dyrektywy zwykłe
ServerAdmin adres_e-mail adres e-mail admina
ServerName name nazwa umożliwiająca określenie nazwy hosta obsługującego serwer
ServerType typ określa jak serwer ma być uruchamiany w systemie Linux musi to być inetd a w Windows standalone
Listen numer określa na jakim porcie demon httpd powinien prowadzić nasłuch, domyślnie jest to port 80
User nazwa [#identyfikator] pozwala ustalić nazwę konta używanego przez demon httpd podczas działania w trybie samodzielnego działania
Group nazwa [#identyfikator] pozwala określić nazwę grupy używanej przez demon httpd podczas działania w trybie samodzielnego procesu (domyślnie można nobody)
ServerRoot katalog katalog w którym znajduje się serwer WWW.
StartServer liczba ustawia liczbę procesów potomnych uruchamianych wraz z uruchomieniem serwera Apache
MaxSpareServers liczba ustawia żądaną maksymalną liczbę bezrobotnych procesów potomnych (procesy które nie obsługują żądań HTTP)
TimeOut liczba_sekund ustawia liczbę sekund, jaką serwer ma czekać na to, aż klient wyśle żądanie po nawiązaniu przez niego połączenia, domyślnie 300
ErrorLog nazwa_pliku nazwa pliku do zapisywania logów
LogLevel poziom logowania zdarzeń: debug, info, notice, warn, error, crit, emerg
PidFile nazwa_pliku nazwa pliku, w którym httpd zapisuje numer swojego procesu. Gdyby Apache nie chciał się zrestartować należy usunąć zawartość tego pliku
DocumentRoot katalog określa katalog w którym http szuka stron WWW
UserDir katalog określa podkatalog katalogu domowego użytkownika (domyślnie public_html).
DirectoryIndex nazwa_pliku określna domyślnie ładowany plik w przypadku nie podania jego nazwy w adresie URL (index.html, index.php)
AccesFIleName nazwa_pliku określa nazwę pliku, który występuje w każdym katalogu z dokumentami i zawiera definicje praw dostępu do zawartości katalogu (.htaccess)
LoadModule nazwa modułu ścieżka ładuje dodatkowy moduł z określonej lokalizacji
Alias żądany_katalog rzeczywisty_katalog określa, że serwer użyje ścieżki rzeczywisty_katalog do lokowania plików ze ścieżki żądany_katalog
ErrorDocument typ_błędu nazwa_pliku określa plik, który serwer powinien wysłać w przypadku wystąpienia błędu określonego typu.
AllowOverride dyrektywa1 dyrektywa2 określa, które dyrektywy kontroli dostępu mogą być znoszone przez dyrektywy wybranych katalogów
- None wyłącza możliwość zgaszenia jakichkolwiek dyrektyw
- All umożliwia znoszenie dyrektyw ogólnych
- AuthConfig pozwala użyć dyrektyw: AuthName, AuthType, AuthUserFile, AuthGroupFile
AuthName nazwa określna nazwę do autoryzacji dla katalogu
AuthType type określa typ stosowanej autoryzacji (Basic)
AuthUserFile naywa_pliku określa plik, w którym są zapisane używane przy autoryzacji nazwy i hasła użytkownika
Order ord określa w jakiej kolejności wykonywane są dyrektywy allow, deny
Deny from host1 host2 określa hosty, na których żądania dostępu mają być odrzucone
Allow from host1 host2 określa hosty, których żądania dostępu mają być obsłużone
Require jednostka jed1, jed2 określa użytkowników, którzy będą mieli dostęp do katalogu. Wartością tego argumentu może też być: user, group, valid-user
Przykład 1 a
AllowOverride AuthConfig
<Directory „C:/katalog”>
AuthName “test”
Order allow, deny
Allow from 127.0.0.1
Allow from 192.168.0.0/24
</Directory>
Przykład 1 b
AllowOverride AuthConfig
<Directory „C:/katalog”>
AccesFileName .htaccess
</Directory>
Zawartość pliku .htacces
Order allow, deny
Allow from 127.0.0.1
Allow from 192.168.0.0/24
Htpasswd -c /hasla/lolo.has marek
Htpasswd /hasla/lolo.has pawel
AllowOverride AuthConfig
<Directory “C:/katalog”>
AuthType Basic
AuthUserFile /hasla/lolo.has
Require valid-user
</Directory>
Stworzyć wirtualne serwery dla
Adresu Ip (serwer apache ma 2 różne adresy IP)
Portu
Domeny(na jednym IP są dwie domeny)
Dwie nazwy dla tej samej lokalizacji
Rozwiązanie dla IP
<VirtualHost 192.168.100.1>
DocumentRoot „c:\strona”
ServerName WWW.adres.pl
ServerAdmin admin@sdff
</VirtualHost>
<VirtualHost 192.168.100.2>
DocumentRoot „c:\strona2”
ServerName WWW.inny.adres.pl
ServerAdmin admin@sdff
</VirtualHost>
Rozwiązanie dla portu
Listen 80 listen 8080
<VirtualHost 192.168.100.1:80>
DocumentRoot „c:\strona”
ServerName WWW.adres.pl
ServerAdmin admin@sdff
</VirtualHost>
<VirtualHost 192.168.100.1:8080>
DocumentRoot „c:\strona2”
ServerAdmin admin@sdff
</VirtualHost>
Rozwiązanie dla domeny
NameVirtualHost 192.168.100.1
<VirtualHost 192.168.100.1>
DocumentRoot „c:\strona”
ServerName WWW.adres.pl
</VirtualHost>
<VirtualHost 192.168.100.1>
DocumentRoot „c:\strona2”
ServerName WWW.inny.adres.pl
</VirtualHost>
Rozwiązanie dla dwuch nazw
<VirtualHost 192.168.100.1>
DocumentRoot „c:\strona”
ServerName WWW.adres.pl
ServerAlias ad.pl adres.pl
ServerAdmin admin@adres.pl
</VirtualHost>