Jak na Internet server ? (7)

Tentokrßt nßs Φekß problematika WWW. Cel² WWW je, jak vφme, postaven na jazyce HTML (HyperText Markup Language), kter²m se definujφ znßmΘ WWW strßnky. Jakß je podoba p°φkaz∙ HTML nßs te∩ nemusφ zajφmat, nebo¥ se budeme zab²vat Webem jeÜt∞ na ni₧Üφ ·rovni, na ·rovni protokolu HTTP (HyperText Transfer Protocol).

HTTP protokol je definovßn v dokumentu RFC1945, kde o n∞m m∙₧ete zφskat ty nejpodrobn∞jÜφ informace, tak₧e jen struΦn∞.

Protokol HTTP

Protokol HTTP je definovßn jako protokol generick². Z hlediska HTTP protokolu existuje server, klient a gateway (brßna), kterß se z jednΘ "strany" tvß°φ jako server a z druhΘ jako klient. Protokol HTTP spolupracuje i s ostatnφmi internetov²mi protokoly, jako je FTP, SMTP atd.

Implementace protokolu HTTP vyu₧φvajφ zatφm v∞tÜinou specifikaci 1.0, krom∞ nφ existuje tΘ₧ nov∞jÜφ specifikace 1.1 a zcela inovovan² protokol HTTP-NG. Krom∞ toho existujφ i starÜφ a ji₧ tΘm∞° zapomenutΘ specifikace 0.9 atd. My se budeme zab²vat specifikacφ 1.0.

Dokument pro protokol HTTP lze definovat jen pomocφ ukazatele URL (Uniform Resource Locator), o n∞m₧ n∞co povφm dßle. Protokol HTTP verze 1.0 podporuje t°i standardnφ metody p°enosu dokument∙: GET, HEAD a POST. GET a HEAD jsou a₧ na pßr v²jimek celkem identickΘ, POST slou₧φ k posφlßnφ n∞jak²ch dat na server (zprßvy, dotaznφky atp.). NejΦast∞jÜφ metodou p°enosu soubor∙ protokolem HTTP je samoz°ejm∞ GET. Protokol HTTP (na rozdφl od FTP, POP3 Φi SMTP) rozliÜuje malß a velkß pφsmena. Pokud si chcete p°enos pomocφ HTTP vyzkouÜet, zkuste se p°ipojit na vßÜ oblφben² WWW server Telnetem (HTTP mß port 80) - t°eba takto:

telnet 194.212.98.5 80

a zadat GET /, Φφm₧ zφskßte homepage na serveru http://194.212.98.5 (co₧ je shodou okolnostφ sφ¥ov² magazφn NetMag) - samoz°ejm∞ v ΦistΘm formßtu k≤dovßnφ dokumentu, tj. v jazyce HTML. Mφsto lomφtka je samoz°ejm∞ mo₧nΘ uvΘst relativnφ cestu dokumentu. Tento zp∙sob brouzdßnφ se vÜak pro jistou nepohodlnost Φtenφ obsahu WWW strßnek p°φliÜ nedoporuΦuje, a tak i ti nejv∞tÜφ guru p°φkazovΘ °ßdky pou₧φvajφ n∞kter² WWW klient, nap°. textov² Lynx. Protokol HTTP 1.0 je, jak vidno, v principu velmi jednoduch².

Protokol HTTP specifikace 1.1 u₧ mß metod vφce, krom∞ stßvajφcφch GET, HEAD a POST p°ib²vajφ jeÜt∞ metody OPTIONS, PUT, DELETE a TRACE a vÜe se zvolna komplikuje.

URL

Neboli Uniform Resource Locator specifikuje p°esn∞ dan² dokument v rßmci celΘ sφt∞. Definice URL je specifikovßna tΘ₧ v RFC1945, tak₧e ji uvßdφm jen pro orientaci:

URL = "protokol:" "//" host [ ":" port ] [ abs_path ]
protokol = definovan² protokol (pro HTTP je to http)
host = povolenΘ jmΘno poΦφtaΦe (DNS zßznam,jmΘno z host listu nebo IP adresa)
port = Φφslo portu

URL pro http protokol pak m∙₧e mφt tvar nap°.
http://www.idg.cz,
http://194.212.98.5,
http://www.cz/ nebo
http://pokus:8028/~alderan/mojestranky/new.html apod.

Pro jinΘ protokoly m∙₧e URL vypadat nap°. takto:

mailto:zbynek@bigfoot.com,
news://news.felk.cvut.cz/,

ftp://pub.vse.cz/pub/386-unix/linux/system/kernel/README

file://C|/dos/command.com (co₧ je specifikace souboru C:\DOS\COMMAND.COM na vaÜem disku, avÜak nebojte se, m∙₧ete k n∞mu skuteΦn∞ jen vy) a podobn∞.

Klient ovÜem samoz°ejm∞ musφ udan² protokol podporovat.

- pokraΦovßnφ p°φÜt∞ -

Zbyn∞k Pospφchal


HorkΘ novinky - leden '97 | HorkΘ novinky | internet4U homepage