Webový server

Pod pojmem webový server rozumíme počítačový program (někdy je tímto pojmem označován počítač), který je zodpovědný za vyřizování požadavků pomocí protokolu HTTP. Klientem, který dává požadavky je většinou webový prohlížeč.

Instalace, spuštění

Webový server je počítačový program, proto existuje více jeho implementací. Například od firmy Microsoft pochází program IIS. Asi nejznámějším open source projektem je Apache, dále pak lighttpd nebo Cherokee.

My se budeme zabývat programem Apache. Jeho instalaci provedeme příkazem:

# aptitude install apache2

Webový server standardně naslouchá na portu 80. Klient (webový prohlížeč) se na tento port připojí a požádá server o určitou Webovou stránku.

To, že program opravdu běží a naslouchá můžeme překontrolovat pomocí příkazu:

$ nmap localhost

Program běží jako služba -- tedy program, který není v přímém kontaktu z uživatelem. Tento stav se někdy označuje termínem démon.

Spuštění nebo pozastavení služeb se děje pomocí systémového skriptu v adresáří /etc/init.d a skriptu service.

# service apache2

... a dále:

# service apache2 start
# service apache2 strop
# service apache2 restart
# service apache2 reload

Úkol

Pozastavte a znovu spusťte webový server Apache a mezi tím překontrolujte pomocí programu nmap stav portu 80.

Konfigurace

Naprostá většina konfiguračních souboru je obecně umístěna v adresáři /etc. Nejinak je to mu i v případě programu Apache. V Debian GNU/Linux je konfigurace v adresáři /etc/apache2/ rozdělena do jednotlivých tematických souborů. Do konfigurace se velice jednoduše můžete podívat pomocí programu Midnight Commander.

# mc /etc/apache2/

Apache je modulární. Pokud chceme určitou jeho funkci povolit/zakázat, děje se to symbolickým odkazem z adresáře /etc/apache2/mods-enabled/ do adresáře /etc/apache2/mods-available/.

Podobná situace je s adresáři /etc/apache2/sites-available/ a /etc/apache2/sites-enabled/. V těchto adresářích se nastavují jednotlivé domény (stánky).

Příklad konfiguračního souboru /etc/apache2/sites-enabled/domena.conf

   1 <VirtualHost *:80>
   2    ServerAdmin webmaster@localhost
   3     
   4     ServerName server.example.com
   5     ServerAlias server www.server.example.com 
   6     ServerAlias *.example.com
   7 
   8    DocumentRoot /var/www
   9    <Directory />
  10        Options FollowSymLinks
  11        AllowOverride None
  12    </Directory>
  13    <Directory /var/www/>
  14        Options Indexes FollowSymLinks MultiViews
  15        AllowOverride None
  16        Order allow,deny
  17        allow from all
  18    </Directory>
  19 
  20    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
  21    <Directory "/usr/lib/cgi-bin">
  22        AllowOverride None
  23        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
  24        Order allow,deny
  25        Allow from all
  26    </Directory>
  27 
  28    ErrorLog ${APACHE_LOG_DIR}/error.log
  29 
  30    # Possible values include: debug, info, notice, warn, error, crit,
  31    # alert, emerg.
  32    LogLevel warn
  33 
  34    CustomLog ${APACHE_LOG_DIR}/access.log combined
  35 </VirtualHost>

`--> stáhnout

Více naleznete v dokumentaci k Apache Virtual Host.

Úkol

  1. Změňte soubor v adresáři /var/www/. Pozorujte změny pomocí webového prohlížeče.
  2. Přejmenujte soubor v adresáři /var/www/. Pozorujte změny pomocí webového prohlížeče.

    /etc/apache2/mods-enabled/dir.conf

    <IfModule mod_dir.c>
        DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
    </IfModule>

    `--> stáhnout

  3. Do konfigurace domény přidejte k adresáři /var/www/ Options +Indexes. Pozorujte změny pomocí webového prohlížeče. Nezapomeňte web-serveru říct, aby si znovu načetl konci.

    # service apache2 reload
    

Odkazy

PSK3-14

Název školy: Vyšší odborná škola a Střední průmyslová škola, Božetěchova 3
Autor: Ing. Marek Nožka
Anotace: Pokročilé vlastnosti SSH
Vzdělávací oblast: Informační a komunikační technologie
Předmět: Počítačové sítě a komunikační technika (PSK)
Tematická oblast: Operační systém Linux/Unix
Výsledky vzdělávání: Žák provádí jednoduchou konfiguraci webového serveru Apache
Klíčová slova: Linux, Unix, Apache
Druh učebního materiálu: Online vzdělávací materiál
Typ vzdělávání: Střední vzdělávání, 4. ročník, technické lyceum
Ověřeno: VOŠ a SPŠE Olomouc; Třída: 4L
Zdroj: Vlastní poznámky, Vilém Vychodil: Linux Příručka českého uživatele