SVN: PLD-doc/book/pl_book__uslugi/pl_uslugi__apache.sec
qwiat
cvs w pld-linux.org
Sob, 9 Wrz 2006, 01:46:49 CEST
Author: qwiat
Date: Sat Sep 9 01:46:48 2006
New Revision: 7743
Modified:
PLD-doc/book/pl_book__uslugi/pl_uslugi__apache.sec
Log:
- poszatkowanie dlugich sekcji na krotsze
- akualizacja opisu by pasowal do apache 2.2
- wydzielenie UserDir jako osobnej sekcji
- masa drobnych poprawek
Modified: PLD-doc/book/pl_book__uslugi/pl_uslugi__apache.sec
==============================================================================
--- PLD-doc/book/pl_book__uslugi/pl_uslugi__apache.sec (original)
+++ PLD-doc/book/pl_book__uslugi/pl_uslugi__apache.sec Sat Sep 9 01:46:48 2006
@@ -15,24 +15,34 @@
wskazuje Apache (a patche server) składa się z wielu modułów. Można to zauważyć
już na pierwszy rzut oka. W tym rozdziale zostanie opisana autoryzacja, obsługa
skryptów php, virtualhosts oraz ogólna jego konfiguracja. Przedstawiona poniżej
- oparta została o apache z serii 2.x.
- Na początek powinieneś zainstalować takie pakiety jak:</para>
- <itemizedlist>
- <listitem override='bullet'>
- <para>apache</para>
- </listitem>
- <listitem override='bullet'>
- <para>apache-mod_dir</para>
- </listitem>
- </itemizedlist>
- <para>Zakładam, że zapoznałeś się już z rozdziałem
- siódmym <literal>Zarządzanie pakietami</literal>, więc przystąpię do krótkiego
- omówienia organizacji struktury katalogów Apache. Tytułem wstępu pragnę jeszcze
+ oparta została o apache z serii 2.x.
+ </para>
+ </section>
+ <section id="uslugi_apache_instalacja">
+ <title>Instalacja</title>
+ <para>
+ Apache w PLD jest podzielony na wiele małych pakietów, możemy dzięki instalować
+ tylko potrzebne moduły. Jeśli nie możemy się połapać w tym gąszczu to możemy
+ posłużyć się metapakietem <filename>apache</filename>, który za pośrednictwem
+ mechanizmu zależności zainstaluje najważniejsze pakiety.
+ <screen># poldek -i apache</screen>
+ Kiedy będziemy mieli zainstalowane wymagane pakiety, będziemy mogli wstępnie przetestować
+ serwer, zatem uruchomimy usługę:
+ <screen># service httpd start</screen>
+ W katalogu <filename>/home/services/httpd</filename> umieszczamy jakąś testową stronę WWW
+ którą nazwiemy np. test.html i sprawdzamy za pomocą przeglądarki czy się prawidłowo wyświetla:
+ <screen>$ elinks localhost/test.html</screen>
+ Jeśli wszystko jest w porządku, to możemy przejść do właściwej konfiguracji serwera.
+ </para>
+ </section>
+ <section id="uslugi_apache_pliki_konf">
+ <title>Pliki konfiguracji</title>
+ <para>Tytułem wstępu pragnę
powiedzieć, że niniejszy dokument nie może być traktowany jako dokumentacja do Apache.
Ma on na celu ułatwienie użytkownikowi zapoznania się z usługą oraz kilkoma jej
możliwościami. Po bardziej szczegółowe informacje odsyłam do stron podręcznika
systemowego (man) oraz dokumentacji
- <ulink url="http://httpd.apache.org/docs-2.0/">on-line</ulink></para>
+ <ulink url="http://httpd.apache.org/docs-2.2/">on-line</ulink></para>
<itemizedlist>
<listitem>
<para><filename class="directory">/etc/httpd/httpd.conf</filename></para>
@@ -62,34 +72,44 @@
<screen># rpm -ql apache |grep ^\/usr\/sbin</screen></para>
</listitem>
</itemizedlist>
- <para>Apache jest ponad to wyposażony w mechanizm loggera wraz z
- <literal>logrotate</literal>, strony podręcznika systemowego oraz pliki README.</para>
+ <para>
+ Aby nasz serwer obsługiwał dodatkowe funkcje musimy zainstalować
+ dodatkowe moduły, wraz z modułami dostarczane, są pliki konfiguracji
+ z potrzebnymi dyrektywami.
+ </para>
+ <para>
+ Po każdej zmianie konfiguracji w katalogu
+ <filename>/etc/httpd/httpd.conf</filename> konieczne
+ jest przeładowanie demona, aby na nowo odczytał swoje
+ pliki konfiguracji.
+ Użyjemy w tym celu odpowiedniego wywołania rc-skryptu:
+ <screen># service httpd restart</screen>
+ Jeśli będziemy modyfikować konfigurację działającego
+ serwera produkcyjnego, to dobrą praktyką jest wcześniejsze
+ użycie programu <filename>apachectl</filename> z pakietu
+ <filename>apache-tools</filename> do sprawdzenia poprawności
+ składni plików konfiguracji:
+<screen># apachectl configtest
+Syntax OK</screen>
+ </para>
+ <para>
+ Bardzo pożyteczną cechą Apache jest możliwość
+ tworzenia lokalnych plików konfiguracji, dzięki którym
+ możemy modyfikować niektóre opcje konfiguracji. Pliki te
+ mają nazwę <filename>.htaccess</filename> i może je tworzyć
+ każdy kto ma tylko dostęp do katalogu ze stroną WWW. Wygoda w
+ ich używaniu polega na tym, że nie ma potrzeby restartowania
+ demona po każdorazowej ich modyfikacji.
+ </para>
</section>
+
<section id="uslugi_apache_konf">
<title>Podstawowa konfiguracja</title>
- <para>Głównym plikiem konfiguracyjnym jest
- <filename>/etc/httpd/httpd.conf/10_httpd.conf</filename>. Zaraz po zainstalowaniu
- demon jest wstępnie skonfigurowany i gotowy do uruchomienia. Warto jednak zapoznać
- się ze specyfiką konfiguracji Apache. Podczas omawiania zwrócę Twoją uwagę na to, co
- może Ci się przydać.</para>
- <para>Plik konfiguracyjny podzielony jest na dwie sekcje.</para>
- <itemizedlist>
- <listitem>
- <para><option>Global Environment</option></para>
- <para>Zdefiniowane są w niej takie rzeczy
- jak parametry dotyczące obsługi klientów łączących się z serwerem, numeru
- portu na ktorym ma on nasłuchiwać nadchodzących połączeń, ilości
- procesów uruchamianych przez demona oraz wątków. Szczegółowe informacje
- na ten temat znajdziesz w dokumentacji do Apache. Również tutaj znajdują się
- dyrektywy ładujące moduły skompilowane jako DSO (Dynamic Shared Object).
- W zasadzie bieżąca konfiguracja tej sekcji powinna być na razie
- wystarczająca, więc nie trzeba nic w niej zmieniać.</para>
-</listitem>
-<listitem>
- <para><option>'Main' server configuration</option></para>
- <para>Jak sama nazwa wskazuje, jest to główna sekcja pliku konfiguracyjnego.
- Zaraz pod definicją grupy oraz użytkownika, na których będzie pracował
- demon znajduje się poniższa opcja.</para>
+
+ <para>Głównym plikiem konfiguracyjnym jest <filename>/etc/httpd/apache.conf</filename>.
+ Spośród wielu opcji w tym pliku zajmiemy się dwiema podstawowymi:
+ </para>
+
<screen>ServerAdmin root w example.net</screen>
<para>Powinieneś tutaj wpisać kontaktowy adres e-mail do siebie jako
administratora tego serwera.</para>
@@ -100,25 +120,45 @@
skonfigurowana na serwerze nazw opiekującym się Twoją domeną. Jeżeli
nie posiadasz zarejestrowanej domeny, powinieneś wpisać tutaj adres
IP.</para>
- <para>Następną opcją jest <option>DocumentRoot</option>. Określa ona domyślny
+ <para>
+ Teraz zajmiemy się opcją <option>DocumentRoot</option>, którą odnajdziemy w
+ <filename>/etc/httpd/conf.d/10_common.conf </filename>
+ Określa ona domyślny
katalog w którym będzie przechowywana strona internetowa. Wpisując
nazwę lub adres IP określony przez <option>ServerName</option> właśnie
z tego katalogu zostaną pobrane i wczytane przez przeglądarkę pliki
strony.</para>
<screen>DocumentRoot "/home/services/httpd/html"</screen>
- <para>Domyślnie wszystkie rządania są tutaj skierowane. Ta lokalizacja nie jest
+ <para>Domyślnie wszystkie żądania są tutaj skierowane. Ta lokalizacja nie jest
obligatoryjna, więc nie musisz się jej trzymać. Może zostać zmieniona przy
użyciu dowiązań symbolicznych lub aliasów wskazujących w inne
miejsca.</para>
- <para>Następna opcja to <option>UserDir</option>. Definiuje ona nazwę katalogu
- przechowującego strony użytkowników.</para>
+
+ <para>Zgodnie z obecnym standardem tworzenia stron internetowych, domyślnym
+ plikiem który jest automatycznie wczytywany po wpisaniu w
+ przeglądarce adresu jest <literal>index</literal>, który w
+ zależności od konstrukcji strony może mieć różne rozszerzenia. A
+ więc skąd Apache wie, co ma zostać wczytane jako pierwsze? Do tego
+ właśnie służy pakiet <literal>apache-mod_dir</literal>. Jego plikiem
+ konfiguracyjnym jest
+ <filename>/etc/httpd/httpd.conf/59_mod_dir.conf</filename></para>
+ <para> Poprzez dyrektywę <option>DirectoryIndex</option> określa się czego i w
+ jakiej kolejności ma szukać przeglądarka.</para>
+<screen>DirectoryIndex index.html index.html.var index.htm index.shtml \
+ index.cgi index.php</screen>
+ <para>Oczywiście możemy podawać tutaj różne nazwy plików startowych stron
+ w zależności od naszych potrzeb.</para>
+ </section>
+
+
+ <section id="uslugi_apache_userdir">
+ <title>Strony użytkowników</title>
+ <para>Opcja <option>UserDir</option> definiuje nazwę katalogu
+ przechowującego strony użytkowników wewnątrz ich katalogów domowych.</para>
<screen>UserDir public_html</screen>
<para>Oczywiście jeżeli nie podoba Ci się ta nazwa możesz ją zmienić, jednak należy
pamiętać o tym, aby nazwy katalogów ze stronami na kontach użytkowników
odpowiadały temu co jest w pliku konfiguracyjnym.</para>
- <!--Ciesiel, luknij na to, Ty się znasz, żeby przykład, który opisałem jakoś
- ładnie wyglądał w dokumentacji :-)
- -->
<para>Przykład: Użytkownik Jan Kowalski posiada konto o nazwie: jan. W
<filename class="directory">/home/users/jan</filename> jest jego katalog
domowy.
@@ -130,32 +170,15 @@
<literal>public_html</literal> powinien mieć <emphasis>755</emphasis>.
Każdy katalog zawierający elementy strony powinien mieć również uprawnienia
<emphasis>755</emphasis>. Pliki strony natomiast
- <emphasis>644</emphasis>. Należy teraz uruchomić usługę aby dokonane
- przez nas zmiany odniosły skutek.</para>
- <screen># /etc/rc.d/init.d/httpd start</screen>
+ <emphasis>644</emphasis>.
+ </para>
<para>Zgodnie z dotychczasową konfiguracją Apache,
stronę Jana będzie można oglądać pod adresem:
- <ulink url="#">http://example.net/~jan</ulink>.</para>
- <para>Zgodnie z obecnym standardem tworzenia stron internetowych, domyślnym
- plikiem który jest automatycznie wczytywany po wpisaniu w
- przeglądarce adresu jest <literal>index</literal>, który w
- zależności od konstrukcji strony może mieć różne rozszerzenia. A
- więc skąd Apache wie, co ma zostać wczytane jako pierwsze? Do tego
- właśnie służy pakiet <literal>apache-mod_dir</literal>. Jego plikiem
- konfiguracyjnym jest
- </para>
- <para>
- <filename>/etc/httpd/httpd.conf/59_mod_dir.conf</filename>
- </para>
- <para> Poprzez dyrektywę <option>DirectoryIndex</option> określa się czego i w
- jakiej kolejności ma szukać przeglądarka.</para>
- <screen>DirectoryIndex index.html index.html.var index.htm index.shtml \
- index.cgi index.php</screen>
- <para>Oczywiście możemy podawać tutaj różne nazwy plików startowych stron
- w zależności od naszych potrzeb.</para>
-</listitem>
- </itemizedlist>
+ <literal>http://example.net/~jan</literal>.
+ </para>
</section>
+
+
<section id="uslugi_apache_vhost">
<title>Virtual Hosts - wiele nazw na jednym serwerze</title>
<para>Mechanizm hostów wirtualnych jest prosty w konfiguracji. Musi się opierać
Więcej informacji o liście dyskusyjnej pld-doc