Remove ads
From Wikipedia, the free encyclopedia
Hüperteksti edastusprotokoll (inglise keeles Hypertext Transfer Protocol ehk HTTP) on protokoll teabe edastamiseks arvutivõrkudes.[1] HTTP on andmete edastamise aluseks veebis.
Internetiprotokolli kihid Andmesideprotokollid · TCP/IP mudel · veel... Rakenduste kiht DHCP · HTTP · HTTPS · IRC · FTP · DNS · SMTP · IMAP · POP · SSH · Telnet · TLS/SSL · XMPP Transpordikiht Internetikiht Internetiprotokoll (IPv4 · IPv6) · IPsec Lülikiht |
Hüpertekst on struktureeritud tekst, mis kasutab teistele ressurssidele viitamiseks hüperlinke.[2] HTTP on hüperteksti edastamiseks loodud protokoll.
HTTP arenduse algatas Tim Berners-Lee CERNis 1989. aastal. HTTP standardite väljatöötamist koordineerisid Internet Engineering Task Force (IETF) ja World Wide Web Consortium (W3C) ning see kulmineerus mitmete kommentaarinõuete (RFC-de) avaldamisega. Kõige kasutatum HTTP versioon HTTP/1.1 defineeriti esimest korda aastal 1997 RFC 2068-s, kuid 1999. aastal asendati see RFC 2616-ga ja 2014. aastal omakorda RFC 7230 sarjaga.
HTTP kasutab klient-server-mudelit ja päring-vastus-protokolli. Näiteks võib kliendi rollis olla veebibrauser ning serveri rollis veebisaiti majutav arvuti. Klient esitab serverile HTTP-päringu. Server töötleb sissetulnud päringu ja tarnib kliendile küsitud ressursi või sooritab kliendi nimel tegevusi. Server tagastab kliendile vastuse, mis sisaldab päringu töötlemise tulemusi ning võib sisaldada ka kliendi päritud ressursse.
HTTP disain võimaldab kasutada vahepealseid võrguelemente, et täiustada klientide ja serverite vahelist suhtlemist. Suure liiklusega veebilehed kasutavad sageli puhverservereid, mis pakuvad kliendile sisu ülaserverite nimel, et kiirendada kliendi juurdepääsu sisule. Veebibrauserid puhverdavad varem kasutatud ressursse ning võimalusel taaskasutavad neid võrguliikluse vähendamiseks. HTTP ressursid on tuvastatavad võrgus nende internetiaadresside kaudu URI-skeemidega http ja https.
HTTP määratleb meetodid, mis vastavad toimingutele, mida tahetakse viidatud ressursil teostada. Ressurss võib sõltuvalt serveri implementatsioonist kujutada endast kas olemasolevaid andmeid, näiteks faile, või dünaamilisi ehk genereeritud andmeid, näiteks mõne protsessi väljundit. HTTP/1.0 spetsifikatsioon[3] määratles meetodid GET, POST ja HEAD. HTTP/1.1 spetsifikatsioon[4] lisas 5 uut meetodit: OPTIONS, PUT, DELETE, TRACE ja CONNECT. Kuna meetodid on spetsifikatsioonidokumentides defineeritud, on nende semantika hästi teada ja neid saab usaldada. Iga klient võib kasutada mistahes meetodit ja server võib olla seatud üles toetama mistahes meetodite komplekti. Kui kasutusel olev meetod on vahepealsele elemendile tundmatu, käsitletakse seda kui ohtlikku ja mitteidempotentset meetodit. Meetodite arv ei ole piiratud – see võimaldab tulevikus uusi meetodeid luua (lõhkumata olemasolevat taristut).[4]
Mõned meetodid (näiteks HEAD, GET, OPTIONS ja TRACE) on definitsiooni järgi[4] määratletud ohututeks, mis tähendab, et nad on ette nähtud üksnes teabe edastamiseks ja ei tohiks muuta serveri olekut. Teisisõnu ei tohiks neil olla kõrvaltoimeid peale üldiselt kahjutute tegevuste nagu logimine või puhverdamine. GET-päringute saatmine peaks olema serveri olekule ohutu, olenemata hetkeolekust, kuid seda ei saa garanteerida, sest praktikas ei ole nende käitlemine mingil moel tehniliselt piiratud.
Samas meetodid POST, PUT, DELETE ja PATCH on ette nähtud tegevusteks, mis võivad põhjustada nii muutusi serveri olekus kui ka kõrvaltoimeid [4], näiteks rahalisi tehinguid või e-posti edastamist.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.