Každý deň používajú internet milióny ľudí na rôzne účely. Spravidla zadáme internetovú adresu alebo adresu URL a dostaneme Webová lokalita. Niekedy sa však vyskytne chyba. Webová stránka sa nezobrazí a zobrazí sa stavový kód označujúci chybu. Mnohí používatelia však významu týchto kódov nerozumejú, hoci vypovedajú o tom, čo sa stalo.
Čo presne sú stavové kódy HTTP?
Stavový kód HTTP je kód, ktorý vydáva webový server webovému prehliadaču na prenos určitých informácií. Kódy sa používajú najmä na informovanie prehliadača o tom, ako má spracovať požiadavku, alebo na poskytnutie spätnej väzby k požiadavke. Bežný používateľ si zvyčajne všimne takýto stavový kód vždy, keď niečo nefunguje. Jedným z najznámejších stavových kódov je chyba 404 - stránka nebola nájdená. Stavový kód sa však nevydáva len v prípade chýb. Aj keď bola operácia úspešná, používateľ bol presmerovaný alebo keď sa na serveri vykonali rôzne iné akcie a opatrenia, tieto sa prenášajú do prehliadača ako súčasť stavových kódov. Vo väčšine prípadov si to však ako bežný používateľ nevšimnete.
Skupiny stavových kódov
Všetky stavové kódy HTTP sú rozdelené do celkovo šiestich skupín, ktoré sú očíslované od jednej po šesť a deväť a každá z nich sa vzťahuje na konkrétnu kategóriu správ. Vo všeobecnosti sa skupiny prideľujú takto:
* 1xx výstupy všeobecné informácie
* 2xx obsahuje kódy pre úspešné operácie
* 3xx obsahuje kódy pre presmerovania a presmerovania
* 4xx je zodpovedný za chyby klienta
* 5xx je zodpovedný za chybu servera
* 9xx výstupy proprietárnych chýb
Týchto šesť skupín obsahuje všetky stavové kódy pre protokol HTTP. Každá skupina obsahuje rôzny počet kódov, ktoré určujú určitú situáciu, stav alebo status.
Skupina 1xx - Všeobecné informácie
Táto skupina zahŕňa tri stavy, a to stavový kód 100, 101 a 102. Tieto kódy sú zodpovedné za vydávanie všeobecných informácií a nápovedy. Kód 100 napríklad vráti prehliadaču príkaz Pokračovať, čím mu oznámi, že môže pokračovať v potenciálne veľkej a na server náročnej požiadavke. Na druhej strane kód 101 informuje prehliadač o prepínaní protokolov, napríklad o prepnutí z HTTP na FTP atď. Nakoniec 102 znamená Processing a informuje prehliadač, že požiadavka sa stále aktívne spracováva. Týmto spôsobom sa zabráni časovému limitu. Kódy v tejto kategórii sa používajú výlučne na komunikáciu s prehliadačom, takže si ich zvyčajne nevšimnete.
Skupina 2xx - Úspešné operácie
Tieto kódy sú čisto informačnými výstupmi. Stavy v tejto kategórii poskytujú jednoduchú spätnú väzbu, napríklad OK, že bol odoslaný formulár alebo že stránka zámerne neobsahuje žiadny obsah. Vo väčšine prípadov z týchto kódov ako bežný používateľ nič nezískate a nepotrebujete ich.
Skupina 3xx - Presmerovania
Skupina 300 kódov sa zaoberá výlučne presmerovaniami. Obsahujú spätnú väzbu, napríklad pre trvalé presmerovanie, používanie proxy atď. Používajú sa najmä na to, aby prehliadač vedel o týchto presmerovaniach a aby smeroval na správnu adresu URL alebo cestu. Zo stavových kódov v tejto skupine sa ako používateľ zvyčajne dozviete len málo alebo vôbec nič.
Skupina 4xx - Chyba klienta
Skupina 400 je prvá skupina, ktorá sa zaoberá aktuálnymi chybovými hláseniami. V tomto prípade ide o chyby klienta, t. j. problémy spôsobené klientom, t. j. webovým prehliadačom, alebo chyby vyvolané klientom. Počet rôznych chybových kódov je značný, ale bežný používateľ sa zvyčajne stretáva s tromi kódmi z tejto skupiny, a to 400, 403 a 404.
Chyba 400 - Bad Request znamená nesprávnu požiadavku. V tomto prípade si prehliadač vyžiadal funkciu alebo stránku. Požiadavka však mala nesprávnu štruktúru, a preto ju server nemohol vykonať. Často sa zobrazí aj chyba 403 - Nie je povolené. Táto chyba sa vždy vyskytne, keď prejdete na webovú lokalitu, ku ktorej nemáte prístup. Ak napríklad chcete získať prístup k adresáru servera bez príslušných oprávnení alebo ak zadáte nesprávne poverenia do dotazu .htaccess, zobrazí sa táto chybová správa. Zďaleka najčastejšou chybou je Chyba 404 - Nenájdené. Vždy, keď zadáte neplatnú alebo nesprávnu webovú stránku, reakciou je chyba 404.
Skupina 5xx - Chyba servera
Ak skupina 400 znamená chyby klienta, t. j. chyby spôsobené webovým prehliadačom, skupina 500 znamená opak. Vracia chybové správy, ktoré boli vyvolané serverom alebo spôsobené na serveri. Pravdepodobne najznámejšou chybou je chyba 500 - Internal Server Error. Ide o súhrnnú chybovú správu pre sériu chýb servera, ktoré nemajú vlastný kód a nie sú podrobnejšie špecifikované. Ďalšími bežnými chybami servera sú chyba 502 Bad Gateway, napríklad ak sa používa zlý proxy server alebo zlyháva presmerovanie, a chyba 503 Service Unavailable, ak je server dočasne nedostupný, napríklad z dôvodu údržby. Občas sa stretnete aj s hlásením Error 504 Gateway Timeout, ktoré informuje, že pripojenie bolo ukončené z dôvodu časového limitu. Najmä na dôležitých webových stránkach alebo pri špeciálnych ponukách sa častejšie stretnete s chybou 509 - Prekročený limit šírky pásma. Správa uvádza, že žiadosť bola prerušená, pretože inak by Šírka pásma servera by bol prekročený.
Skupina 9xx - Vlastné stavové správy
Skupina 900 je úplne vyhradená pre vlastné, tzv. proprietárne chybové správy. Je určený pre server Správcovia a správcovia webových stránok môžu vytvárať a používať vlastné chybové hlásenia a stavové kódy. Z tohto dôvodu sa používanie stavov môže líšiť od servera k serveru a od konfigurácie ku konfigurácii. Vysvetlenie kódov alebo vyhlásenie o tom, ktoré kódy sa používajú, sa preto tiež nemôže uvádzať.