linart.no-ip.org KONFIGURACJA SERWERA APACHE

             Apache to nazwa serwera typu http służącego do publikacji stron www w Internecie. Powstał on na

 bazie komercyjnego serwera NCSA. Nazwa APACHE jest skrótem od A PAtCHy sErver.

 Krótko mówiąc, kiedy chcemy opublikować naszą własną stronę, na naszym własnym serwerze, musimy uruchomić, oraz skonfigurować serwer Apache.

Uruchamianie

Instalacja jest analogiczna jak w przypadku innych serwerów.

W konsoli tekstowej należy wpisać polecenie setup i wybrać usługę httpd a następnie zrestartować go poleceniem httpd -k (re)start

Serwer jest gotowy od razu po zainstalowaniu. Standardowy plik konfiguracyjny spełnia większość naszych wymogów.

Aby ręcznie uruchomić httpd, należy wydać w konsoli polecenie:

/etc/init.d/httpd start

Wyłączamy aplikację wpisując:

/etc/init.d/httpd stop

Aby serwer uruchamiał się przy każdym starcie systemu, wydajemy polecenie:

chkconfig –add httpd


 

 

 

Konfiguracja serwera http (APACHE)

Plik konfiguracyjny znajduje się w katalogu etc, /etc/httpd/conf/httpd.conf.

 Istnieją również trzy dowiązania symboliczne:

logs wskazujący na katalog /var/log/httpd, gdzie w poszczególnych plikach zapisywane będą informacje o pobranych stronach oraz błędach pojawiających się podczas obsługi tychże stron.

modules wskazujący na /usr/lib/httpd/modules- katalog, w którym zainstalowane są moduły potrzebne do pracy Apache.

Run prowadzący do /var/run. Jest to katalog, gdzie zapisuje się informacje o działających procesach demonów pracujących w systemie, którym między innymi jest Apache.

Katalog conf.d służy do umieszczenia w nim plików z ewentualną konfiguracją modułów. W katalogu conf znajduje się główny plik konfiguracyjny o nazwie httpd.conf

Zaczynamy konfigurację, uruchamiając dowolny edytor tekstu i edytując plik

/etc/httpd/conf/httpd.conf

Plik konfiguracyjny podzielony jest na trzy sekcje. W pierwszej znajdują się globalne ustawienia dla Apache. Druga dotyczy domyślnych ustawień głównej strony WWW, trzecia zaś konfiguracji dodatkowych stron WWW, jakie może obsługiwać Apache.

 

SEKCJA PIERWSZA- zmienne globalne

Od ustawień w tej sekcji zależy działanie serwera httpd. Na szczęście większość ustawień domyślnych jest poprawna i nie trzeba ich zmieniać. Przeglądając plik httpd.conf, natrafimy na dyrektywę ServerRoot, która zawiera nazwę głównego katalogu serwera WWW. Od ścieżki zawartej w tej zmiennej zależy wiele innych. Jej standardowa wartość to /etc/httpd i nie należy jej zmieniać.

Idąc dalej, natrafimy na listę modułów, które ładują się przy starcie serwera. Wczytywane są praktycznie wszystkie moduły, z większości z nich nie będziemy korzystać- możemy je w miarę potrzeby usuwać z listy w pliku konfiguracyjnym.

 

SEKCJA DRUGA- konfiguracja standardowego serwera

W tej sekcji znajduje się konfiguracja domyślne strony WWW. Będzie ona pokazywana przy każdym wpisaniu adresu naszego serwera, chyba, że określimy dodatkowe strony w sekcji trzeciej VirtualHost.

 

Konfiguracja strony domyślnej.

Przyjmijmy, że posiadamy zarejestrowaną domenę lan.pl i takiej użyjemy do konfiguracji serwera.

Pierwszą dyrektywą, którą edytujemy jest ServerAdmin. Ustawia się tu adres administratora serwera. W tym przypadku będzie to: ServerAdmin admin@lan.pl

Adres ten będzie dostępny w stopce serwera przy wyświetlaniu informacji o zaistniałych błędach. Kolejną ważną rzeczą, jaką należy ustawić to nazwa serwera. Służy do tego dyrektywa SerwerName. Domyślnie jest ona nieustawiona, należy ją uaktywnić usuwając znak # na początku linii oraz ustawić wartość SerwerName www.lan.pl

 

Przykładowy wpis powinien wyglądać w następujący sposób:

 

ServerAdmin amin@lan.pl

#

# SerwerName gives the name and port that the server uses

# This can often be determined automatically, but we recon

# it explicitly to prevent problems during startup.

# If this is not set to valid DNS name for your host, server

# redirections will not work.  See also the UseCanonicaiIN

#

# If your host doesn’t have a registered DNS name, enter

# You will have to access it by its address anyway, and t

# redirections work in a sensible way.

 

 ServerName www.lan.pl

 

Dalej znajduje się dyrektywa DocumentRoot, zawierająca informacje o katalogu, w którym znajdują się pliki dla strony WWW. Ścieżka dostępu do tych plików to, /var/www/html i tam umieścimy naszą stronę.

Pozycja DitectoryIndex definiuje pliki, które będą wyświetlane, jeżeli nastąpi żądanie wyświetlania katalogu. Jeżeli ktoś wpisze w przeglądarce adres www.lan.pl/info/, to DirectoryIndex wskaże pliki, jakie mają być przesłane w odpowiedzi na żądanie takiego adresu. Jeżeli nie będzie żadnego z wymienionych plików, to w zależności od praw nałożonych na katalog albo pokaże się informacja o błędzie 403, albo zostanie wyświetlona zawartość katalogu. Do standardowo wpisanych index.html i index.html.var warto dopisać index.htm i index.php o ile będziemy korzystać z PHP. Ważna jest kolejność plików w tej liście. Wysłany zostanie pierwszy plik, jaki zostanie znaleziony. Wpisujemy, zatem nazwy w kolejności:

DitectoryIndex index.html index.htm index.php index.html.var

Oto jak powinien wyglądać gotowy wpis:

 

DitectoryIndex index.html index.htm index.php index.html.var

 

#

# AccessFileName: The name of the file to look for in each dir

# for access control information.  See also the AllowOverride

#

AccessFileName .htaccess

 

#

# The following lines prevent .htaccess and .htpasswd files fro

# viewed by Web clients.

#

<Files ~ “^\.ht”>

 

Każde wywołanie strony jest odnotowywane w logach. To czy zapisany zostanie adres IP komputera, z którego przyszło żądanie strony, czy jego pełna nazwa zależy od dyrektywy HostnameLookups. Standardowo jest ona wyłączona- zapisywany będzie tylko adres, IP.

Warto wpisać przy niej wartość On . Do logów będzie trafiać pełna nazwa komputera, o ile IP pokazuje pełną nazwę domenową (FQDN), np. 212.77.100.101 po rozwiązaniu nazwy to www.wp.pl.

 

Gotowy wpis:

 

<IfModule mod_mime_magic. c>

#       MIMEMagicFile /usr/share/magic.mime

         MIMEMagicFile conf/magic

<IfModule>

#

# HostnameLookups: Log the names of clients or just their IP a

# e.g. , www.apache.org (on) or 204.62.129.132 (off).

# The default is off because it ’ d be overall better for the name

# had to knowingly turn this feature on, since enabling it mea

# each client request will result in AT LEAST one lookup request

# nameserver.

HostnameLookups On

#

# ErrorLog: The location of the error log file.

# If you do not specify an ErrorLog directive within a <Virtual>

# container, error messages relating to that virtual host will

#logged here.  If you *do* define an error logfile for a <Vim>

# container, that host’s errors will be logged there and not here

#

ErrorLog logs/error_log

 

 Ostatnią rzeczą, którą powinniśmy zrobić to zmienić sposób kodowania znaków. Wystarczy, że w dyrektywie AddDefaultCharset zmienimy wpis ISO-8859-1 na ISO-8859-2.

Oto jak powinien wyglądać wpis:

# reasons in browsers, related to javascript and URL parking

# which encourage you to always set a default char set.

#

AddDefaultCharset  Iso-8859-2

 

SEKCJA TRZECIA- konfiguracja wirtualnych stron WWW

Gdy chcemy mieć więcej niż jedną domenę ze stroną WWW, musimy skonfigurować Apacze tak, aby ją poprawnie obsługiwał. Inaczej wyświetlana będzie tylko strona główna, ustawiona przez nas wcześniej. Do konfiguracji dodatkowych stron używa się dyrektywy blokowej VirtualHost.

Po zmianie ustawień warto przeładować httpd, wpisując komendę:

/etc/init.d/httpd restart




główna