En HTTP-Client, wéi typescherweis deWebbrowser, lancéiert ëmmer d'Kommunikatioun. Wann op enger Websäit deLink zu derURLhttp://lb.wikipedia.org/beispill.html aktivéiert gëtt, da gëtt un deeComputer mam Nummlb.wikipedia.org eng Ufro (Request) geschéckt an opgefuerdert d'Dateibeispill.html zeréckzeschécken. Dobäi muss fir d'éischt den Nummlb.wikipedia.org iwwerDNS-Protokoll an engIP-Adress ëmgesat ginn. Ass dat geschitt, gëtt engTCP-Connexioun zum Standard-Port 80 tëscht dem Browser an dem Server établéiert an d'Ufro a Form vun enger HTTP-Ufro un de Server gestalt. De Server sengersäits lauschtert iwwer säi Port 80, datt ee Client him eng Ufro zouschéckt.
Beispill-Ufro:
GET /beispill.html HTTP/1.1Host: lb.wikipedia.org
Zousätzlech Informatiounen, wéi zum Beispill iwwer de Browser oder zur gewënschter Sprooch, kënnen iwwer Request-Headeren iwwerdroe ginn. Soubal de Client seng Ufro lancéiert huet, schéckt de Webserver sengersäits eng HTTP-Äntwert (Response) zeréck. Dës start mat der Versiounsnummer vum Protokoll a besteet aus den Header-Informatioune vum Server, enger eideler Zeil an dem Contenu vun der ugefuerderter Datei, respektiv mat enger Feelermeldung, wann d'Datei net um Server fonnt ka ginn oder wann de Benotzer net autoriséiert ass drop zouzegräifen.
Beispill-Äntwert:
HTTP/1.1 200 OKServer: Apache/1.3.29 (Unix) PHP/4.3.4Content-Length: (Gréisst vu beispill.html a Byte)Content-Language: deContent-Type: text/htmlConnection: close(Contenu vu beispill.html)
An der Praxis ass dacks nach eeProxy-Server tëscht geschalt, wat déi ganz Kommunikatioun méi komplizéiert mécht. Ee Proxy-Server ass en Tëschespäicher (Cache), fir den Original-Server z'entlaaschten a spillt vis-à-vis vum Client de Server, vis-à-vis vum Server awer de Client.
- HTTP/0.9 ass tëscht1989 an1990 entwéckelt ginn a war déi éischt Versioun vum Protokoll. Dës Versioun huet nëmmen d'GET-Methode ënnerstëtzt, déi just streng limitéiert Informatiounen un de Server schécke konnt.
- HTTP/1.0 (RFC 1945) war déi éischt ausgeräifte Versioun aus dem Joer1992, déi ënner anerem Feelermeldungen iwwerdroe konnt. Nieft der GET-Methode, ënnerstëtzt dës Versioun och d'POST-Methode, soudatt Informatiounen aus engem HTML-Formulaire a Form vun engem Dateblock un de Server geschéckt kënne ginn. HTTP/1.0 ënnerscheet bei Dokumenter tëscht verschiddene Medientyppen a ka sou net nëmmen einfach Text-Dokumenter ausliwweren. Mat Hëllef vun engem einfachenAuthentifikationsmechanismus kënne Ressource virum onberechtegem Zougrëff geschützt ginn.
- HTTP/1.1 (RFC 2068;RFC 2616) ass déi aktuell Versioun vun1997. Si erlaabt persistent Verbindungen, soudatt net ëmmer eng neiTCP-Verbindung fir eng Ufro muss opgebaut ginn. Zousätzlech ënnerstetzt HTTP/1.1 eng Rëtsch vu weidere Request-Methoden, souwéi d'Iwwerdroe vun Dokumentfragmenten. Mat Hëllef vun derContent Negotiation kann de Server Ressource mat gläicherURL a verschiddene Varianten dem Client bereetstellen. Sou kann de Browser zum Beispill d'Informatioun direkt an der gewënschter Sprooch ausgeliwwert kréien. HTTP/1.1 stellt eng verbessert Authentifizéierung bereet, woubäi den Numm an d'Passwuert net méi am Kloertext iwwerdroe ginn.
Beim zoustandslosem HTTP-Protokoll ass d'Verbindung tëscht den zwee Kommunikatiounpartneren no enger erfollegräicher Dateniwwerdroung ofgeschloss. An anere Wierder ass all Interaktioun onofhängeg vun der vireger Aktioun a kann déi nächst Interaktiounen net beaflossen. Dës Virgoensweis stellt awer zum Beispill beimE-Commerce Problemer duer. Wéi soll de Server sech mierken, wat ee Benotzer alles a sengem Weenchen huet?
MatCookies soll dëse Problem aus der Welt geschaf ginn. Cookies ginn dem zoustandslosem HTTP-Protokoll d'Méiglechkeet, Informatiounen, déi de Client vum Server geliwwert kritt, a Form vu klengen Dateien op der Clientsäit ze späicheren an dës Informatiounen an enger spéiderer Ufro un de Server nees z'iwwerginn. Sou kann eng logesch zesummenhängend Sëtzung iwwer verschidde physikalesch Verbindungen opgebaut ginn.