HTTP (engl. HTTP, HyperText Transfer Protocol) je glavna i najčešća metoda prijenosa informacija na Webu. Osnovna namjena ovog protokola je omogućavanje objavljivanja i prezentacije HTML dokumenata, tj. web stranica.

HTTP je samo jedan od protokola aplikativne razine koji postoje na Internetu. Drugi značajniji internetski protokoli na aplikacijskoj razini su: FTP, HTTP, HTTPS, IMAP, IRC, NNTP, POP3, RTP, SIP, SMTP, SNMP, SSH, SSL, Telnet, UUCP, BitTorrent ...

Razvoj i standardizaciju HTTP protokola nadgledju World Wide Web Consortium (W3C) i radne skupine Internet Engineering Task Force.

HTTP protokol uredi

HTTP je request/response protokol za komunikaciju između poslužitelja (servara) i klijenta. HTTP klijent, kao što je web preglednik najčešće inicira prijenos podataka nakon što uspostavi TCP (vidi TCP/IP) vezu s udaljenim web serverom na određenom portu.

Server konstantno osluškuje zahtjeve na određenom mrežnom komunikacijskom portu (tipično port 80), čekajući da klijent pošalje niz znakova (string), kao što je "GET / HTTP/1.1" - kojim će zahtjevati uspostavljanje komunikacije - a nakon toga i tekstualnu MIME poruku koja sadrži nekoliko slovnih nizova (zaglavlje) koji određuju aspekte zahtjeva, te paket neobaveznih podataka. Nakon "GET" poruke, klijent mora poslati niz znakova koji određuju adresu virtualnog hosta, na primjer "HOST:www.example.com".

Zahtjev (engl. request) klijenta će rezultirati slanjem odgovora (engl. response) sa poslužitelja, kao što je "200 OK" - nakon čega će server poslati i svoj paket podataka koji najčešće sadrži traženu datoteku ili poruku o grešci. Odmah po ispunjenju zahtjeva klijenta, server će prekinuti komunikaciju.

HTTP se razlikuje od ostalih TCP protokola kao što je npr. FTP, po tome što se konekcija i komunikacija sa serverom prekida odmah nakon izvršenja zahtjeva klijenta (isporičenog paketa traženih podataka). Zbog ovoga je HTTP idealan za Web, gdje je stranica obično povezana sa drugim stranicama na drugim poslužiteljima. Ova karakteristika HTTP protokola povremeno stvara probleme web dizajnerima, s obzirom da nedostatak "perzistentne konekcije" s poslužiteljem moraju ... uporabom drugih metoda za očuvanjem korisničkog "stanja". Jedna od tih metoda uključuje uporabu HTTP cookie-a.

HTTPS je sigurna verzija HTTP protokola, koja koristi SSL/TLS za zaštitu i skrivanje prometa, odn podataka koji se razmjenjuju između klijenta i poslužitelja. Ovaj protokol obično koristi TCP port 443. SSL (donekle) omogućava zaštitu komunikacije, čak i us lučaju kada je samo jedna strana (obično poslužitelj) autentificirana.

Lokacija HTTP (i HTTPS) dokumenata se određuje pomoću URL adrese. URL adresna sintaksa je kreirana posebno za povezivanje web stranica.