Konfiguracja serwera Apache



Podobne dokumenty
Apache serwer WWW (część 2) Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

W poprzednim odcinku poznaliśmy: W poprzednim odcinku, cd.: W dzisiejszym odcinku. Apache serwer WWW (część 2)

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Apache. Apache serwer WWW

Apache serwer WWW. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Rys. 1. Widok uruchomienia polecenia apt-get install build-essential. Rys. 2. Widok uruchomienia polecenia apt-get install apache2

Serwery WWW. Konfiguracja. Zadania serwera. NCSA httpd 1.5

Tomasz Greszata - Koszalin

Aplikacje WWW. Wykład 12. Serwery HTTP. wykład prowadzi: Maciej Zakrzewicz. Serwery HTTP

Zarządzanie systemami informatycznymi. Zarządzanie serwerem httpd: Apache

Michał Gottlieb. Podręcznik Apache.

Zapoznanie się z konfiguracją i zarządzaniem serwerem WWW - Apache.

FTP co to takiego? FTP File Transfer Protocol (Protokół Przesyłania Plików) RFC 114,959

I.Wojnicki, Tech.Inter.

Instytut Teleinformatyki

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Dokonaj instalacji IIS opublikuj stronę internetową z pierwszych zajęć. Ukaże się kreator konfigurowania serwera i klikamy przycisk Dalej-->.

Serwer Apache podstawy instalacji i administracji.

Automatyczna aktualizacja. Instalacja Serwera aktualizacji

ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 2 Seria: Teleinformatyka 2013

Instrukcja konfiguracji funkcji skanowania

Linux -- u mnie działa!

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

SOWA-WWW. Moduł prezentacji katalogu bibliotecznego w sieci WWW. Dokumentacja techniczna. Autor: Michał Fryska Data: Wersja: 1.

Laboratorium 3.4.2: Zarządzanie serwerem WWW

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Budowa intranetu Linux, Apache, VirtualHost. Rajmund Radziewicz

Instalacja NOD32 Remote Administrator

Praca Magisterska "System zdalnego składania ofert kupna i sprzedaży za pośrednictwem Internetu" AUTOR PROMOTOR

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat protokołu http.

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

SOWA-WWW. Moduł prezentacji katalogu bibliotecznego w sieci WWW. Dokumentacja techniczna. Autor: Michał Fryska Data: Wersja: 2.

Systemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

mod ssl moduł umożliwiający uruchomienie protokołu https, czyli szyfrowanej wersji serwisu

Tomasz Greszata - Koszalin

Aplikacje WWW - laboratorium

11. Autoryzacja użytkowników

Języki i narzędzia programowania III. Łukasz Kamiński Wykład II

Krótka instrukcja instalacji

Adam Warnowski NT Group 1 / 25

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

INSTALACJA SERWERA LOKALNEGO TYPU WAMP NA PRZYKŁADZIE PAKIETU KRASNAL SERV 2.7

Platforma webowa IIS

DLA DREAMBOX & FLASHWIZARD

Instrukcja instalacji połączenia sterownika PL11-MUT24 ze stroną internetową.

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład VII

ABA-X3 PXES v Podręczna instrukcja administratora. FUNKCJE SIECIOWE Licencja FDL (bez prawa wprowadzania zmian)

Instrukcja instalacji usługi Sygnity Service

Niezbędne narzędzia. Przed rozpoczęciem pracy z PHP należy zainstalować odpowiednie narzędzia: środowisko PHP serwer WWW serwer baz danych MySQL

Administrowanie serwerami usług sieciowych WWW

Wdrożenie modułu płatności eservice. dla systemu Magento

Technologie sieciowe Sprawozdanie z labolatorium. Lista 5

ABA-X3 PXES v Podręczna instrukcja administratora. XDMCP Licencja FDL (bez prawa wprowadzania zmian) Tryb X terminala

Podstawy technologii WWW

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Usługi sieciowe systemu Linux

Kancelaria Prawna.WEB - POMOC

KARTA KURSU. Administracja serwerami WWW

Pracownia internetowa w szkole ZASTOSOWANIA

Exchange Konfiguracja protokołu SSL/TLS w serwerze pocztowym Exchange wersja 1.0

Administratora CSIZS - OTM

Aplikacje WWW - laboratorium

Konfiguracja vsftpd ( Very Secure FTP Server )

mgr Marek W. Krasowski Liceum Ogólnokształcące im. J. I. Kraszewskiego w Drohiczynie

Obsługa poczty elektronicznej w domenie emeritus.ue.poznan.pl

Wykład 6: PHP: praca z bazą danych MySQL, cz.2

ZAKŁADANIE POCZTY ELEKTRONICZNEJ - na przykładzie serwisu

Wykład 3 / Wykład 4. Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Współpraca z platformą Emp@tia. dokumentacja techniczna

Wymagania do zdalnej instalacji agentów firmy StorageCraft

Zarządzanie Infrastrukturą IT. Jak ręcznie utworzyć instancję EAUDYTORINSTANCE na SQL Serwerze

Opis komunikacji na potrzeby integracji z systemem klienta (12 kwiecień, 2007)

PORADNIKI. Atak SMB Man-In-The-Middle

Windows Server 2008 Standard Str. 1 Ćwiczenia. Opr. JK. I. Instalowanie serwera FTP w Windows Server 2008 (zrzuty ekranowe z maszyny wirtualnej)

Konfiguracja klienta Lotus Notes R6 z certyfikatami i kluczami na karcie kryptograficznej lub w pliku.

Win Admin Replikator Instrukcja Obsługi

Wprowadzenie. Wprowadzenie. Sieciowe systemy operacyjne usługi sieciowe

Projektowanie bezpieczeństwa sieci i serwerów

Wstęp Instalacja guest guest Konfiguracja

System Kancelaris. Zdalny dostęp do danych

Win Admin Replikator Instrukcja Obsługi

Zarządzanie Infrastrukturą IT

Instrukcja dla instalatora systemu SMDP Enterprise/Professional

Qmail radość listonosza. Autorzy: Bartosz Krupowski, Marcin Landoch IVFDS

Instalacja pakietu SAS 9.3 Audit, Performance and Measurement na platformie Windows

Panel administracyjny serwera: admin.itl.pl

Aplikacje internetowe - laboratorium

Dokumentacja SMS przez FTP

Wymagania techniczne infrastruktury IT potrzebne do uruchomienia i pracy ServiceDesk Plus

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Kontrola dostępu w ASP.NET

Opcje Fiery1.3 pomoc (klient)

Dokumentacja interfejsu HTTPD. Platforma BSMS.PL Instrukcja podłączenia po przez http

Transkrypt:

Konfiguracja serwera Apache autor Jarosław Mężyk e-mail j.mezyk@netcoffee.pl www http://www.netcoffee.pl wersja dokumentu 1.0 Licencja Creative Commons Pewne prawa zastrzeżone Attribution-NonCommercial-ShareAlike 2.0 Poland

Wstęp Zamiast opisywać wszystkie dyrektywy serwera Apache, utworzyłem pliki konfiguracyjne tego serwera, oraz opisałem użyte w nich dyrektywy. Serwer w oparciu o tą konfigurację działa pod systemem Windows. Powinien działać także pod systemem Linux. Jeżeli są użyte (bądź nie) jakieś dyrektywy, które działają jedynie pod jednym z tych systemów, zaznaczono ten fakt. Konfiguracja serwera obejmuje następujące zagadnienia: serwery wirtualne logowanie pliki własnej konfiguracji.htaccess własne strony błędów strony użytkowników negocjacja zawartości uwierzytelnianie Założenia Serwer działa w fikcyjnej firmie Don Jaro. Firma posiada domenę don_jaro.pl. Na potrzeby pracowników firmy udostępniono następujące serwery http: don_jaro.pl oraz www.don_jaro.pl - obsługujące główną witrynę firmy features.don_jaro.pl udostępniające dodatkowe funkcje, nie związane bezpośrednio z żadnym innym serwerem (Np. kanały informacyjne RSS, panele do obsługujących je przeglądarek oraz inne) download.don_jaro.pl serwer umożliwiający pobranie plików udostępnionych przez firmę.

uzytkownicy.don_jaro.pl serwer udostępniający strony pracowników, współpracowników oraz niektórych klientów firmy serwis.don_jaro.pl serwer udostępniający aplikację opartą o sieć www do zarządzania witryną. Umożliwia także dostęp do logów serwera. sql.don_jaro.pl serwer umożliwiający dostęp do pakietu phpmyadmin pozwalającego zarządzać bazami danych taurus.don_jaro.pl serwer umożliwia dostęp do aplikacji Taurus jest to pakiet służący do zarządzania relacjami z klientem (aplikacja napisana w PHP istnieje naprawdę, jest to moja praca magisterska na Wydziale Mechanicznym Politechniki Koszalińskiej) espesa.don_jaro.pl to kolejna aplikacja udostępniona pracownikom firmy Don Jaro mail.don_jaro.pl dostęp do poczty przez interfejs www Wszystkie te serwery obsługują standardowy port 80. Jedynym wyjątkiem jest serwer serwis.don_jaro.pl który (ze względów bezpieczeństwa) jest dostępny na porcie 8004 (wiedzą o tym jedynie uprawnione osoby) Oprócz tych serwerów, dostępne są także inne serwery: pocztowy pod adresem mail.don_jaro.pl ftp pod adresem download.don_jaro.pl MySql pod adresem sql.don_jaro.pl Konfiguracja tych serwerów nie jest opisana. Ponieważ obsługują one inne porty, mogą pracować pod tymi samymi adresami domenowymi, co serwer Apache.

Rozwiązanie Drzewo katalogów obsługiwane przez serwery http oraz ftp jest następujące (dotyczy to systemu Windows, dla systemu Linux ścieżki będą oczywiście inne): E:\serwer o www o ftp www.don_jaro.pl sql.don_jaro.pl features.don_jaro.pl serwis.don_jaro.pl taurus.don_jaro.pl espesa.don_jaro.pl mail.don_jaro.pl public user_1 html user_2 html jaro html

W katalogu e:\serwer\www umieszczone są katalogi których nazwy odpowiadają nazwom domenowym obsługiwanych serwerów wirtualnych. Te katalogi zawierają dokumenty udostępniane przez odpowiednie serwery, przy czym: w katalogu www.don_jaro.pl zawarte są dokumenty udostępniane zarówno przez www.don_jaro.pl jak i don_jaro.pl. Tak naprawdę jest tylko jeden serwer (www.don_jaro.pl) a druga nazwa (don_jaro.pl) jest tylko aliasem serwer download.don_jaro.pl nie ma własnego katalogu. Udostępnia on pliki znajdujące się w drzewie katalogów serwera ftp e:\serwer\ftp\public. Dzięki temu, pliki z tego katalogu można pobrać zarówno przez serwer http jak i ftp, logując się anonimowo Serwer użytkownicy.don_jaro.pl także nie posiada oddzielnego katalogu. Jeżeli nie podano po adresie (http://uzytkownicy.don_jaro.pl) nazwy użytkownika (np. ~jaro), udostępniana jest strona firmy (z katalogu www.don_jaro.pl). W przeciwnym wypadku, zostaje udostępniona strona z drzewa ftp. Np. dla użytkownika jaro (http://uzytkownicy.don_jaro.pl/~jaro) zostanie udostępniona strona z katalogu e:\serwer\ftp\jaro\html. W ten sposób, użytkownicy sami mogą zarządzać własną witryną, logując się na serwerze ftp przy użyciu odpowiedniego klienta, i umieszczając swoje pliki html w podkatalogu html swojego katalogu domowego. Konfiguracja Aby ułatwić zarządzanie konfiguracją serwera, została ona rozdzielona na kilka plików. Główny plik to httpd.conf. Zawiera on domyślną konfigurację serwera, która odnosi się także do serwerów wirtualnych i obowiązuje je, jeżeli nie zmieniono poszczególnych opcji.

Zawartość pliku httpd.conf ServerRoot "E:/server/apache/Apache2" #Określa położenie plików serwera w drzewie katalogów PidFile logs/httpd.pid #Określa położenie pliku zawierającego id procesu serwera Timeout 300 #Określa w sekundach: # czas oczekiwania na odebranie żądania GET # maksymalny czas pomiędzy odebraniem kolejnych pakietów żądania PUT lub POST # KeepAlive On # Określa, czy należy podtrzymać połączenie pomiędzy żądaniami od klienta. MaxKeepAliveRequests 500 # Określa, ile żądań będzie obsłużonych podczas jednego połączenia z klientem. Twórcy Apache sugerują wysokie wartości w celu osiągnięcia dużej wydajności serwera KeepAliveTimeout 15 # Określa, ile sekund będzie czekał Apache przed zamknięciem połączenia po zakończeniu obsługi żądania Listen 80 Listen 8004 # Domyślnie serwer nasłuchuje na wszystkich portach. Dyrektywa Listen pozwala ograniczyć działanie serwera do konkretnego portu/portów (lub adresu IP). Jeżeli chcemy aby serwer nasłuchiwał na kilku portach/adresach, należy użyć tej dyrektywy kilkakrotnie. Od wersji 2.0

serwera, dyrektywa ta jest wymagana. W przypadku jej braku w konfiguracji, serwer nie uruchomi się. Include conf/modules.conf # Dyrektywa Include powoduje włączenie do konfiguracji określonego pliku. Podana ścieżka jest względna do tej podanej w dyrektywie ServerRoot. W pliku modules.conf umieszczone zostały dyrektywy dołączające dynamicznie moduły serwera. ScriptAlias /php/ "e:/server/php/" #Dyrektywa ScriptAlias ma działanie identyczne z Alias, przy czym określa, że w docelowym katalogu znajdują się skrypty CGI. Dyrektywa Alias została opisana w dalszej części AddType application/x-httpd-php.php #Dyrektywa AddType przypisuje podane rozszerzenie (tu:.php) do konkretnego typu mime (tu: Application/x-httpd-php) Action application/x-httpd-php "/php/php.exe" #Dyrektywa Action określa program który zostanie uruchomiony w przypadku, gdy żądanie będzie dotyczyło dokumentu CGI #User webuser #Group webgroup #Dyrektywy User oraz Group, bezużyteczne w systemie Windows, określają w systemie Linux, z prawami jakiego użytkownika (i grupy) będzie działał serwer w przypadku, gdy zostanie uruchomiony z prawami roota (serwer przełączy się na podanego użytkownika. W przypadku, gdy serwer zostanie uruchomiony z innego konta niż root, nie będzie w stanie przełączyć się na innego użytkownika, i będzie kontynuował pracę jako użytkownik, z którego konta został uruchomiony. UseCanonicalName On #W wielu przypadkach, serwer musi utworzyć w udostępnianych dokumentach (np. strony błędów, indeksy katalogów) odwołania do samego siebie. W przypadku włączenia tej dyrektywy (On) do tworzenia adresów, zostanie użyta nazwa podana w dyrektywie ServerName. Jeżeli jako wartość podamy Off, serwer do tworzenia odwołań będzie używał adresu i portu podanego przez klienta w nagłówkach żądania. W przypadku, gdy klient nie poda nazwy, użyta zostanie ta z dyrektywy ServerName

DirectoryIndex index.html index.html.var index.php index.htm #Dyrektywa ta określa, jaki dokument zostanie przesłany do klienta, w przypadku, gdy żądanie będzie dotyczyło katalogu. Podana ścieżka jest względna wobec żądanego katalogu AccessFileName.htaccess #Dyrektywa ta określa nazwę pliku konfiguracyjnego odczytywanego przy każdym żądaniu. Pozwala to na dynamiczną zmianę konfiguracji serwera przez każdego użytkownika. Zmiana zawartości lokalnego pliku konfiguracyjnego nie wymaga ponownego uruchomienia serwera. Użycie tych plików poważnie pogarsza wydajność serwera. TypesConfig conf/mime.types #Dyrektywa ta określa ścieżkę (względną wobec ServerRoot) wskazującą na plik zwierający mapowanie rozszerzeń plików na typy mime. DefaultType text/plain #Dyrektywa określa, jaki typ mime zostanie przesłany do klienta, w przypadku, gdy dla danego dokumentu nie można określić typu (np. plik nie ma rozszerzenia) ServerTokens min #Dyrektywa określa, jakie informacje zostaną wysłane do klienta w nagłówku Server odpowiedzi http. Możliwe wartości to: Prod, Major, Minor, Min, Os, Full (domyślna). W przypadku podania Prod wysyłane są minimalne informacje (Apache). W przypadku Full wysyłane są pełne informacje, łącznie z nazwą systemu operacyjnego (Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2) ServerSignature Email #Dyrektywa pozwala określić, jakie informacje zostaną dołączone do stopki generowanych dokumentów. Wartość Email powoduje dołączenie także odnośnika do poczty e-mail administratora serwisu. <Directory /> AllowOverride None </Directory>

#Ten blok określa, że dla całego katalogu / (przy czym / oznacza tu korzeń drzewa katalogów całego systemu plików a nie fragmentu obsługiwanego przez serwer) nie będzie można nadpisywać konfiguracji w plikach.htaccess <Files ~ "^\.ht"> Order allow,deny Deny from all </Files> #Ten blok określa, że pliki, których nazwy odpowiadają wyrażeniu regularnemu (czyli zaczynają się od.ht) nie będą udostępniane klientom. HostnameLookups On #Wartość On sprawia, że numery IP klientów będą zamieniane na ich nazwy domenowe i używane do logowania lub przekazywania do skryptów CGI LogLevel warn #Dyrektywa określa jakie zdarzenia będą logowane w dziennikach LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent #Dyrektywa pozwala zdefiniować formaty logowania Alias /error/ "E:/serwer/www/serwis.don_jaro.pl/error/" #Dyrektywa pozwala na przechowywanie dokumentów w innym miejscu, niż określone w DocumentRoot. Pierwszy parametr to częśc URL a drugi to odpowiadający mu katalog w systemie plików ErrorDocument 401 /error/401.php ErrorDocument 403 /error/403.php ErrorDocument 404 /error/404.php ErrorDocument 500 /error/500.php #Dyrektywa pozwala na określenie dokumentów, które zostaną wysłane do klienta w przypadku wystąpienia błędu. BrowserMatch "Mozilla/2" nokeepalive

BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirectcarefully BrowserMatch "^WebDrive" redirect-carefully BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully BrowserMatch "^gnome-vfs" redirect-carefully #Dyrektywa ustawia odpowiednie zmienne środowiskowe w przypadku, gdy nazwa przeglądarki przesłana przez klienta odpowiada określonym wyrażeniom regularnym ScriptAlias /cgi-bin/ "E:/server/apache/Apache2/cgi-bin/" <Directory "E:/server/apache/Apache2/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> #powyższy blok instrukcji wraz z dyrektywą ScriptAlias określa, że jeżeli w żądaniu występuje fragment /cgi-bin/ to odnosi się on nie do podkatalogu katalogu z dokumentami określonego w DocumentRoot ale do katalogu E:/server/apache/Apache2/cgi-bin/. Jest to uwarunkowane koniecznością trzymania plików wykonywalnych w osobnym katalogu (ze względów bezpieczeństwa) AddLanguage de.de AddLanguage en.en AddLanguage pl.po #Dyrektywa mapuje rozszerzenia plików na konkretny język. I tak index.htm.po oznacza dokument w języku polskim. Dla języka polskiego określono rozszerzenie.po a nie.pl aby odróżnić dokumenty w języku polskim od skryptów Perla. Inne języki pominięto dla czytelności dokumentu. LanguagePriority pl en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pt pt-br ru sv zh-cn zh-tw #Dyrektywa określa ważność poszczególnych języków w sytuacji gdy klient nie określił w żądaniu, jakiego języka oczekuje (dotyczy negocjacji zawartości, opisanej dalej)

ForceLanguagePriority Preser #Dyrektywa określa, że w przypadku gdy klient nie określił w żądaniu, jakiego języka dokumentu oczekuje, należy wybrać dokument w pierwszym dostępnym języku (zgodnie z kolejnością określoną w LanguagePriority) AddDefaultCharset ISO-8859-2 #Dyrektywa określa kodowanie dokumentów w przypadku gdy nie można w żaden inny sposób określić kodowania. AddCharset ISO-8859-2.iso8859-2.latin2 #Dyrektywa mapuje rozszerzenia na kodowanie (podobnie jak w przypadku AddLanguage). Pozostałe kodowania pominięto dla czytelności dokumentu. NameVirtualHost 127.0.0.1 #Dyrektywa określa, że pod podanym adresem IP są skonfigurowane serwery wirtualne # Poniższe dyrektywy dołączają konfiguracje poszczególnych serwerów wirtualnych Include conf/www.don_jaro.pl.conf Include conf/serwis.don_jaro.pl.conf Include conf/download.don_jaro.pl.conf Include conf/uzytkownicy.don_jaro.pl.conf Include conf/sql.don_jaro.pl.conf Include conf/features.don_jaro.pl.conf Include conf/taurus.don_jaro.pl.conf Include conf/espesa.don_jaro.pl.conf

Zawartość www.don_jaro.pl.conf <VirtualHost www.don_jaro.pl> DocumentRoot e:/serwer/www/www.don_jaro.pl/ ServerName www.don_jaro.pl ServerAlias don_jaro.pl ServerAdmin admin@don_jaro.pl #Kolejno określamy: położenie katalogu z plikami, nazwę serwera oraz e-mail administratora. Dyrektywa ServerAlias pozwala podać dodatkową nazwę serwera HostnameLookups Off #Ze względu na przewidywany duży ruch na serwerze wyłączamy sprawdzanie nazw domenowych CustomLog logs/www.don_jaro.pl.access.log common ErrorLog logs/www.don_jaro.pl.error.log #Określamy położenie plików logów serwera <Directory "e:/serwer/www/www.don_jaro.pl"> Options +MultiViews AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost> #Ten blok dyrektyw określa, że dla katalogu z włączony jest tryb wielowidokowy. Oznacza to, że na podstawie przesłanego przez klienta nagłówka Accept-Language określany jest preferowany język. W przypadku gdy klient nie określi języka, lub w określonych przez niego językach nie jest dostępny dokument, brane są pod uwagę kolejno języki z dyrektywy LanguagePriority. Wysyłany do klienta jest dokument w wybranym języku (język rozpoznany jest po rozszerzeniu p. AddLanguage)

W dalszej części dokumentu zostaną omówione jedynie te dyrektywy z pozostałych plików konfiguracyjnych, które nie występują w plikach już omówionych. serwis.don_jaro.conf <VirtualHost serwis.don_jaro.pl:8004> Alias /log e:/server/apache/apache2/logs #udostępniamy pliki z katalogu logów serwera BrowserMatch ^donjaro administrator #Bardzo naciągana konfiguracja, służąca jedynie demonstracji możliwości serwera. Ta dyrektywa ustawia zmienną systemową administrator w momencie, kiedy przeglądarka przedstawia się jako donjaro <Directory e:/server/apache/apache2/logs> Options Indexes #polecenie generowania indeksów w przypadku braku pliku index.* (p. DirectoryIndex) order deny,allow #kolejność przetwarzania dyrektyw allow i deny deny from all #blokowanie dostępu dla wszystkich klientów a następnie: allow from env=administrator #zezwalanie tym, dla których jest ustawiona zmienna adminstrator AuthType Basic AuthName "Logi serwera" #Wymaganie autoryzacji AuthUserFile e:/server/apache/apache2/logs/uzytkownicy.uf #Określenie pliku z nazwami i hasłami użytkowników require valid-user

#Określenie, że wymagamy dowolnego, poprawnego użytkownika satisfy any #Dyrektywa ma zastosowanie, w przypadku, gdy dostęp określamy zarówno na podstawie autoryzacji i dyrektywy allow. Parametr any określa, że wystarczy, że użytkownik spełni jeden warunek. Jeżeli użyje przeglądarki przedstawiającej się jako donjaro, nie będzie pytany o hasło. </Directory> <Files httpd.pid> order deny,allow Deny from All </Files> <Files install.log> order deny,allow Deny from All </Files> #te dwa bloki zapobiegają dostępowi do plików install.log i httpd.pid (są one w tym samym katalogu co logi serwerów) </VirtualHost> <VirtualHost download.don_jaro.pl> download.don_jaro.pl.conf Include conf/icons.conf #w pliku icons.conf przypisujemy ikony do poszczególnych typów plików CustomLog logs/download.don_jaro.pl.access.log common ErrorLog logs/download.don_jaro.pl.error.log ServerAdmin admin@download.don_jaro.pl ServerName download.don_jaro.pl DocumentRoot e:/serwer/ftp/public/ <Directory /> Options Indexes #Określamy, że mają być generowane indeksy katalogów Order allow,deny Allow from all </Directory> ReadmeName README.html HeaderName HEADER.html

#Dyrektywy określają, które pliki mają być dołączane do indeksów jako nagłówek i stopka IndexOptions FancyIndexing VersionSort #ustawiamy opcje indeksowania </VirtualHost> użytkownicy.don_jaro.pl.conf <VirtualHost uzytkownicy.don_jaro.pl> Include conf/icons.conf DocumentRoot e:/serwer/www/www.don_jaro.pl/ ServerName uzytkownicy.don_jaro.pl UserDir "e:/serwer/ftp/*/html" #Ta dyrektywa określa, gdzie znajdują się katalogi użytkowników z dokumentami do udostępnienia przez serwer. Gwiazdka zastępowana jest przez nazwę użytkownika podaną za znakiem tyldy (~) w wywołaniu. <Directory "e:/serwer/ftp/"> AllowOverride All #Pozwalamy użytkownikom na nadpisywanie konfiguracji w lokalnych plikach konfiguracyjnych </Directory> <Directory "e:/serwer/www/www.don_jaro.pl"> Options +MultiViews AllowOverride None Order allow,deny Allow from all </Directory> #Ten blok został omówiony w przypadku serwera www.don_jaro.pl </VirtualHost>

Literatura Oryginalny plik konfiguracyjny serwera Apache dostarczony wraz z wersją instalacyjną, oparty o konfigurację serwera NCSA napisaną przez Rob a McCool a. Apache HTTP Server Version 2.0 Documentation Apache przewodnik encyklopedyczny Ben Laurie i Peter Laurie (O Reilly Helion) HTTP Leksykon kieszonkowy Clinton Wong (O Reilly Helion)