Hypertext Transfer Protocol pruža standard mrežnog protokola koji web pretraživači i serveri koriste za komunikaciju. Vidite HTTP kada posjetite web stranicu jer se protokol pojavljuje u URL-u (na primjer, Ovaj protokol je sličan drugima, kao što je protokol za prijenos datoteka, po tome što ga koristi klijentski program za traženje datoteka sa udaljenog servera. U slučaju HTTP-a, web pretraživač traži HTML datoteke od web servera, koje se zatim prikazuju u pretraživaču s tekstom, slikama, hiperlinkovima i povezanim sredstvima.
Budući da pretraživači komuniciraju koristeći HTTP, obično možete ispustiti protokol iz URL-a kada ga unesete u adresnu traku pretraživača.
Historija
Tim Berners-Lee kreirao je početni HTTP standard ranih 1990-ih kao dio svog rada na definiranju originalnog World Wide Weba. Tri primarne verzije su raspoređene tokom 1990-ih:
- HTTP 0.9: Podrška osnovnih hipertekstualnih dokumenata.
- HTTP 1.0: Ekstenzije za podršku bogatih web stranica.
- HTTP 1.1: Razvijeno za rješavanje ograničenja performansi HTTP-a 1.0, navedenih u Internet RFC 2068.
Najnovija verzija, HTTP 2.0, postala je odobreni standard 2015. Održava kompatibilnost unatrag sa HTTP 1.1, ali nudi dodatna poboljšanja performansi.
Dok standardni HTTP ne šifrira promet koji se šalje preko mreže, HTTPS standard dodaje enkripciju HTTP-u korištenjem Secure Sockets Layera ili kasnije, Transport Layer Security.
Kako HTTP funkcionira
HTTP je protokol sloja aplikacije izgrađen na vrhu TCP-a koji koristi komunikacijski model klijent-server. HTTP klijenti i serveri komuniciraju putem poruka zahtjeva i odgovora. Tri glavna tipa HTTP poruka su GET, POST i HEAD.
- HTTP GET: Poruke poslane na server sadrže samo URL. Na kraju URL-a može se dodati nula ili više opcionih parametara podataka. Server obrađuje opcioni dio podataka URL-a, ako je prisutan, i vraća rezultat (web stranicu ili element web stranice) pregledniku.
- HTTP POST: Poruke postavljaju sve opcione parametre podataka u tijelo poruke zahtjeva umjesto da ih dodaju na kraj URL-a.
- HTTP HEAD: Zahtjevi rade isto kao i GET zahtjevi. Umjesto odgovora s punim sadržajem URL-a, server šalje natrag samo informacije zaglavlja (sadržane unutar HTML odjeljka).
Pretraživač pokreće komunikaciju sa HTTP serverom pokretanjem TCP veze sa serverom. Sesije pretraživanja weba prema zadanim postavkama koriste port servera 80, iako se drugi portovi kao što je 8080 ponekad koriste umjesto toga.
Nakon uspostavljanja sesije, vi pokrećete slanje i primanje HTTP poruka posjetom web stranici.
HTTP je ono što se zove sistem bez državljanstva. To znači da, za razliku od drugih protokola za prijenos datoteka kao što je FTP, HTTP veza se prekida nakon što se zahtjev završi. Dakle, nakon što vaš web pretraživač pošalje zahtjev i server odgovori sa stranicom, veza se zatvara.
Rješavanje problema
Poruke prenete preko HTTP-a mogu biti neuspjehe iz nekoliko razloga:
- Greška korisnika.
- Kvar web pretraživača ili web servera.
- Greške u kreiranju web stranica.
- Privremeni kvarovi na mreži.
Kada se ovi kvarovi dogode, protokol bilježi uzrok kvara i prijavljuje kod greške pretraživaču koji se zove HTTP statusna linija/kod. Greške počinju određenim brojem koji označava o kakvoj se vrsti greške radi.
Na primjer, greške sa šifrom greške koja počinje s četiri označavaju da zahtjev za stranicu ne može biti dovršen kako treba, ili da zahtjev sadrži netačnu sintaksu. Na primjer, 404 greške znače da se web stranica ne može pronaći; neke web stranice čak nude zabavne prilagođene stranice s greškom 404.