Hypertext Transfer Protocol tarjoaa verkkoprotokollastandardin, jota verkkoselaimet ja palvelimet käyttävät viestintään. Näet HTTP:n, kun vierailet verkkosivustolla, koska protokolla on URL-osoitteessa (esimerkiksi http://www.lifewire.com). Tämä protokolla on samanlainen kuin muut, kuten tiedostonsiirtoprotokolla, siinä mielessä, että asiakasohjelma pyytää sitä tiedostojen pyytämiseen etäpalvelimelta. HTTP:n tapauksessa verkkoselain pyytää verkkopalvelimelta HTML-tiedostoja, jotka sitten näytetään selaimessa tekstin, kuvien, hyperlinkkien ja niihin liittyvien kohteiden kanssa. Koska selaimet kommunikoivat HTTP:n kautta, voit yleensä poistaa protokollan URL-osoitteesta kirjoittaessasi sen selaimen osoiteriville.
HTTP:n historia
Tim Berners-Lee loi ensimmäisen HTTP-standardin 1990-luvun alussa osana työtään, joka määritteli alkuperäisen World Wide Webin. Kolme ensisijaista versiota otettiin käyttöön 1990-luvulla:
- HTTP 0.9: Tukee tavallisia hypertekstiasiakirjoja.
- HTTP 1.0: Laajennukset tukemaan monipuolisia verkkosivustoja.
- HTTP 1.1: Kehitetty vastaamaan Internet RFC 2068:ssa määritettyihin HTTP 1.0:n suorituskykyrajoituksiin.
Uusimmasta versiosta, HTTP 2.0:sta, tuli hyväksytty standardi vuonna 2015. Se on taaksepäin yhteensopiva HTTP 1.1:n kanssa, mutta tarjoaa lisäparannuksia suorituskykyyn. Vaikka tavallinen HTTP ei salaa verkon kautta lähetettyä liikennettä, HTTPS-standardi lisää HTTP-salauksen käyttämällä Secure Sockets Layeria tai myöhempää Transport Layer Securityä.
Miten HTTP toimii
HTTP on TCP:n päälle rakennettu sovelluskerroksen protokolla, joka käyttää asiakas-palvelin-viestintämallia. HTTP-asiakkaat ja -palvelimet kommunikoivat pyyntö- ja vastausviestien kautta. HTTP-viestien kolme päätyyppiä ovat GET, POST ja HEAD.
- HTTP GET: Palvelimelle lähetetyt viestit sisältävät vain URL-osoitteen. Nolla tai useampi valinnainen tietoparametri voidaan lisätä URL-osoitteen loppuun. Palvelin käsittelee URL-osoitteen valinnaisen dataosan, jos sellainen on, ja palauttaa tuloksen (verkkosivun tai verkkosivun elementin) selaimeen.
- HTTP POST: Viestit sijoittavat valinnaisia tietoparametreja pyyntöviestin runkoon sen sijaan, että ne liittäisivät ne URL-osoitteen loppuun.
- HTTP HEAD: Pyynnöt toimivat samalla tavalla kuin GET-pyynnöt. Sen sijaan, että palvelin vastaisi URL-osoitteen kokonaisuudessaan, se palauttaa vain otsikkotiedot (jotka sisältyvät HTML-osiossa).
Selain aloittaa tiedonsiirron HTTP-palvelimen kanssa muodostamalla TCP-yhteyden palvelimeen. Web-selausistunnot käyttävät oletusarvoisesti palvelimen porttia 80, vaikka joskus käytetään muita portteja, kuten 8080. Kun istunto on muodostettu, aktivoi HTTP-viestien lähettäminen ja vastaanottaminen vierailemalla verkkosivulla. HTTP on mitä . kutsutaan valtioton järjestelmä† Tämä tarkoittaa, että toisin kuin muut tiedostonsiirtoprotokollat, kuten FTP, HTTP-yhteys katkaistaan, kun pyyntö on suoritettu. Joten kun verkkoselaimesi lähettää pyynnön ja palvelin vastaa sivulla, se katkaisee yhteyden.
HTTP-vianmääritys
HTTP:n kautta lähetetyt viestit voivat epäonnistua useista syistä:
- Käyttäjän virhe.
- Vika verkkoselaimessa tai verkkopalvelimessa.
- Virheet verkkosivuja luotaessa.
- Tilapäisiä verkkokatkoksia.
Kun nämä virheet tapahtuvat, protokolla tallentaa virheen syyn ja raportoi selaimelle virhekoodin, jota kutsutaan HTTP-tilariviksi/koodiksi. Virheet alkavat tietyllä numerolla osoittamaan, minkä tyyppisestä virheestä on kyse. Esimerkiksi virheet, joissa on neljällä alkava virhekoodi, osoittavat, että sivun pyyntöä ei voitu suorittaa onnistuneesti tai että pyyntö sisältää väärän syntaksin. Esimerkiksi 404-virheet tarkoittavat, että verkkosivua ei löydy; Jotkut verkkosivustot tarjoavat jopa mukavia mukautettuja 404-virhesivuja.