Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
132/255
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 |
Obsah:
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č.
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
Pozastavte a znovu spusťte webový server Apache a mezi tím překontrolujte
pomocí programu nmap
stav portu 80
.
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).
/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.
/var/www/
. Pozorujte změny pomocí webového prohlížeče.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
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