$ telnet www.server.com 80
Trying 127.0.0.1...
Connected to www.server.com
Escape character is '^]'.
GET /~user/document.html
<HTML>
<HEAD>
<TITLE>Home Page</TITLE>
</HEAD>
<BODY>
<P> My first web page ! :-) </P>
</BODY>
</HTML>
Služba WWW běží standardně na portu 80.
Pokud bychom chtěli získat defaultní dokument na příslušném serveru pak
použijeme za klíčovým slovem znak / (např.
GET / ) což je stejné jako /index.html
nebo /index.php. Za
předpokladu, že zmíněné dokumenty jsou vedeny serverem jako defaultní.
HTTP verze 1.0
Narozdíl od verze 0.9 je syntaxe zápisu o něco
složitější. Obecný zápis je následující:
method path HTTP/1.0
headers
empty_line
Nejběžněji užívanou metodou při komunikaci s
WWW serverem je metoda GET.
Metod, které můžeme použít je několik. Uvědme si napřiklad POST a HEAD. Metoda POST se převážně používá pro
odesílání dat z webových či jiných formulářů (záleží na implementaci
terminálu např. webový prohlížeč, wap prohlížeč nebo J2ME aplikace).
Metoda HEAD se používá pouze
pro zaslaní ruzných hlaviček obsahujících různé metainformace o
dokumentu.
Význám jednotlivých hlaviček je v
doplňujících informacích různého charakteru. Hlavička je vždy
umístěna na samostatném řádku a má formát header_name: value.
Použití hlaviček je nepovinné. Odpověd u této verze protokolu ma
odlišný formát než předešlá verze protokolu. Součástí odpovědi není
jenom obsah požadovaného dokumentu, ale i souhrn různých hlaviček.
Například dokument ze serveru www.server.com/~user/document.html
získáme u verze HTTP/1.0
nasledujícím postupem:
$ telnet www.server.com 80
Trying 127.0.0.1...
Connected to www.server.com
Escape character is '^]'.
GET /~user/document.html HTTP/1.0
HTTP/1.0 200 OK
<HTML>
<HEAD>
<TITLE>Home Page</TITLE>
</HEAD>
<BODY>
<P> My first web page ! :-) </P>
</BODY>
</HTML>
O uspěchu operace jsme informování pomocí tzv.
stavové hlášky. Pokud vše proběhlo korektně, tak odpovědí stavu je HTTP/1.0 200 OK. V našem případě
byla tato podmínka splněna.
HTTP verze 1.1
Tato verze
protokolu přináší značná zlepšení a to zejméno pro provozování
virtuálních serveru. Princip spočívá v tom, že na jedné IP adrese může
běžet více webových serveru. Otázkou zůstává jak má server poznat
konkrétní požadovaný server. Toto se řeší tím, že než odešleme
požadavek serveru přidáme do požadavku nasledující řádek Host: hostname. Na základě tohoto
parametru pak WWW server pozná kam ma požadavek předat. Například
dokument ze serveru www.server.com/~user/document.html
získáme u verze HTTP/1.1
nasledujícím postupem:
$ telnet www.server.com 80
Trying 127.0.0.1...
Connected to www.server.com
Escape character is '^]'.
GET /~user/document.html HTTP/1.1
Host: www.server.com
HTTP/1.0 200 OK
<HTML>
<HEAD>
<TITLE>Home Page</TITLE>
</HEAD>
<BODY>
<P> My first web page ! :-) </P>
</BODY>
</HTML>
Instalace a konfigurace serveru Apache
Apache je dostupný pro celou řadu operačních
systému např. Linux, Unix a Windows. Nabýzí nám dva způsoby instalace:
- binární instalace
- instalace ze zdrojových kódů
První způsob instalace (binární) nám nabýzí
snadný způsob jak si server s minimálním úsilím nainstalovat.
Instalační soubory je možné stáhnou z oficiálních stranék http://httpd.apache.org.
Většina distribucí operačního systému Linux obsahuje instalační
baliček. Při instalaci se držíme jednotlivých informací, které nám
instalátor postupně zobrazuje.
Druhý způsob
instalace je už obtížnější . Nejprve si musíme stánout přislušné
archivační soubory připadně baličky, které obsahují zdrojové soubory.
Soubory rozbalíme do pracovního adresáře. Je nutné abychom na diskovém
mediu měli dostatečný kapacitní prostor. Dále budeme potřebovat mít
nainstalovaný překladač jazyka ANSI C nebo GNU C compiler (GCC). Spustíme konfigurační skript
configure, který provede
kontrolu prostředí operačního systému. Dále provedení testování, zda je
k dispozici odpovídající programové vybavení, a nastaví parametry pro
vlastní překlad. Pokud vše proběhlo bez chyb spustíme na příkazovém
řádku příkaz make, který
zahájí překlad zdrojového kódu. Po dokončení spustíme příkaz make install, který vytvoří cílový
adresář, do kterého uloží vygenerované soubory. Dalším krokem bude
úprava konfiguračního souboru httpd.conf, kde
mužem například provést nastavení virtuálního serveru. Konfigurační
soubor je dobře okomentován a tak usnadňuje vlastní proces nastavení
serveru. Nakonec spustíme Apache a pomocí prohlížeče otestujeme
připojení.
Apache umožňuje práci s moduly a tudíž může
serveru přidat vlastnost práce např. s PHP nebo SSL.
Stručný přehled klíčových slov konfiguračního souboru httpd.conf
Port - Definuje na kterém
portu běží server
ServerName - Definuje jméno
serveru
DocumentRoot - Definuje kořen
pro dokumenty serveru
Příklad nastavení defaulních dokumentů
<IfModule mod_dir.c>
DirectoryIndex
index.php index.html index.htm index.php3 index.php4
</IfModule>
Příklad nastavení virtuálního serveru
<VirtualHost www.server.com>
ServerAdmin
admin@server.com
DocumentRoot
"/www"
ServerName
www.server.com
ErrorLog
logs/error-www.server.com
CustomLog
logs/www.server.com combined
</VirtualHost>
Odkazy
http://www.apache.org
http://www.php.net
Comanche - nástroj pro administraci
AWStats - nástroj pro správu
logovacích souborů
WebAlizer - nástroj pro
správu logovacích souborů