**Hüperteksti olekukood** (inglise keeles *Hypertext Transfer Protocol response status code* ehk *HTTP response status code*) on kolmekohaline täisarvukood, mis on veebis vastuseks veebisaitide serverite poolt ning mis annab tehtud taotluse mõistmise ja rahuldamise kaste tulemuse.

Olekukoodi esimene number määrab ühe viiest standardsest vastuse klassist. Olekukoodi kaks viimast numbrit ei oma klassifitseerimis- ega kategoriseerimisrolli. Standardiga on määratletud viis klassi:

1xx informatiivne – taotlus saadi, protsess jätkub;

2xx edukas – taotlusest saadi edukalt aru ja on aktsepteeritud;

3xx ümbersuunamine – taotluse lõpetamiseks on vaja lisameetmeid;

4xx kliendi viga – päring sisaldab süntaksi viga või seda ei saa täita;

5xx serveri tõrge – server ei suutnud taotlust täita.

1xx informatiivne
-----------------

1xx HTTP-olekukoodid tähistavad esialgset ajutist vastust, kus klientarvuti saab vähemalt ühe 1xx vastuse enne regulaarse vastuse saamist.

Näiteks:

100 – jätka (*continue*).

Taotlus saadi ja ei ole serveri poolt tagasi lükatud.

101 – protokollide vahetamine (*switching protocols*).

Taotlusest saadi aru ja server on valmis seda täitma.

2xx õnnestumine
---------------

2xx HTTP-olekukoodid näitavad, et taotluse vastuvõtmine serveris oli edukas.

Näiteks:

200 – OK, taotlus oli edukas.

201 – loodud (*created*).

Taotlus on täidetud ja üks või mitu ressurssi on loodud.

202 – aktsepteeritud.

Taotlus on töötlemiseks vastu võetud, kuid töötlemine pole lõpuni viidud.

3xx ümbersuunamine
------------------

3xx HTTP-olekukoodid näitavad, et klientbrauser peab taotluse täitmiseks täiendavaid toiminguid tegema. Vajaliku toimingu võib kasutajaagent läbi viia ilma kasutajaga suhtlemata ainult siis, kui teises taotluses kasutatud meetod on GET või HEAD.

Näiteks:

301 – jäädavalt teisendatud.

Taotletud ressursile on määratud uus ühtne ressursiidentifikaator (URI ehk *Uniform Resource Identifier*)

4xx kliendi viga
----------------

4xx HTTP-olekukoodid näitavad, et tekkis klientbrauseri poolt tekitatud tõrge. See on üks tihedamini esinev olekukood ning kõige tavalisemaks põhjuseks on see, et klientbrauser on taotlenud lehte, mida pole olemas.

Näiteks:

400 – vigane päring.

Klientbrauseri poolt põhjustatud süntaksi viga, mille tõttu ei saa server taotlusest aru.

401 – juurdepääs keelatud.

401.1 näitab olekukoodi 401 täpsemat põhjust ja selleks on sisselogimise nurjumine.

404 – ei leitud.

Üks kõige rohkem esinevatest olekukoodidest. Põhjuseks võib olla vale lehe taotlemine või leht on ümber kolinud teisele aadressile.

5xx serveri tõrge
-----------------

5xx HTTP-olekukoodid näitavad, et server ei saa taotlust lõpuni viia, kuna serveris tekib tõrge.

Näiteks:

500 – sisemine serveritõrge.

Üldine veateade, mis antakse siis, kui ilmnes ootamatu tingimus ja konkreetsem teade ei sobi.

503 – teenus pole saadaval.

Üldiselt ajutine seisund. Server ei saa päringut käsitseda, kuna see on hoolduseks ülekoormatud või maas.

Viga 404 – ei leitud (*not found*)
----------------------------------

HTTP-olekukood 404 näitab, et soovitud lehele ei ole võimalik jõuda, kuna seda ei leita serverist.

Viga on kliendipoolne ja see tekib, kuna sisestatud internetiaadress on vale või leht on veebisaidilt teisendatud ja vana internetiaadress ei ole uuele aadressile suunatud või internetiaadress on eemaldatud.

Veast vabanemiseks:

Teha lehele uuesti laadimine, kuna mõnikord võib 404 vea parandamiseks piisata värskendusest.

Kontrollida üle sisestatud internetiaadress.

Otsida soovitud lehte mõnest populaarsemast otsingumootorist (nt Google).

Viga 403 – juurdepääs keelatud (*forbidden*)
--------------------------------------------

HTTP-olekukood 403 näitab, et soovitud juurdepääs taotletud ressursile on keelatud. Server sai päringust aru, aga ei täida seda kliendiga seotud probleemi tõttu. Kuna olekukood 403 teatis on üldine, siis on loodud sellele täpsustavad olekukoodid.

403.1 – juurdepääs on keelatud

403.2 – lugemisõigus on keelatud

403.3 – kirjutusjuurdepääs on keelatud

403.4 – vajalik SSL

403.5 – nõutav SSL 128

403.6 – IP-aadress lükati tagasi

403.7 – vajalik kliendi sertifikaat

403.8 – juurdepääs saidile keelatud

403.9 – liiga palju kasutajaid

403.10 – vale konfiguratsioon

403.11 – parooli muutmine

403.12 – Mapper keelas juurdepääsu

403.13 – kliendi sertifikaat on tühistatud

403.14 – kataloogide loetelu on keelatud

403.15 – klientide juurdepääsulitsentsid on ületatud

403.16 – kliendisertifikaat ei ole usaldusväärne või on vale

403.17 – kliendisertifikaat on aegunud või ei ole veel kehtiv

403.18 – taotlust ei saa sellelt rakenduste puult täita

403.19 – selles rakenduskomplektis ei saa kliendi CGI-sid käivitada

403.20 – passi sisselogimine nurjus

403.21 – juurdepääs allikale keelatud

403.22 – lõpmatu sügavus on keelatud

403.502 – liiga palju taotlusi samalt kliendi IP-lt; Dünaamiline IP-piirang on saavutatud

403.503 – tagasi lükatud IP-aadressi piirangu tõttu

Kokkuvõte
---------

Hüperteksti olekukoodid annavad informatsiooni tehtud taotluse mõistmine, arengu ja rahuldamise kohta. Olekukoodid jagunevad viide klassi: 1xx informatiivne, 2xx edukas, 3xx ümbersuunamine, 4xx kliendi viga ja 5xx serveri tõrge. Teades, mida olekukoodid tähendavad, saab paremini jälgida taotluste protsessi ja tõrgete korral saab informatsiooni, milline etapp ebaõnnestus. Kõige rohkem esinevad vead 404 ja 403.

Viited
------

1. 1 2 3  R. Fielding, J. Reschke (juuni 2014). "Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content". Vaadatud 09.01.2021.
2. 1 2 3 4  "Hypertext Transfer Protocol -- HTTP/1.1". Juuni 1999. Vaadatud 09.01.2021.
3. 1 2 3 4 5 6  "HTTP-olekukoodid rakendustes IIS 7 ja hilisemates versioonides". Vaadatud 09.01.2021.
4. ↑  Miessler, Daniel (20. august 2020). "What's the Difference Between a URI and a URL?". Vaadatud 09.01.2021.
5. ↑  Taylor, Steve (4. aprill 2007). "The holding page and the 503 status code". Originaali arhiivikoopia seisuga 27.11.2020. Vaadatud 09.01.2021.
6. ↑  Fisher, Tim. "Kuidas määrata 404 leitud viga". Vaadatud 10.01.2021.