Në botën e zhvillimit të uebit, kodet e gabimit HTTP luajnë një rol jetik në ndikimin e përvojës së përdoruesit dhe reputacionit të një faqe interneti. Në këtë artikull, ne do të shqyrtojmë një listë të plotë të kodeve të gabimeve të serverit, do të analizojmë kuptimet e tyre dhe do të mësojmë se si të interpretojmë në mënyrë efektive kodet e përgjigjes së serverit për të zgjidhur problemet dhe për të optimizuar performancën e aplikacioneve në internet.
Çfarë është një kod përgjigjeje HTTP
Kodi i përgjigjes HTTP është gjuha e serverëve të uebit që i përkthen kërkesat e shfletuesit në udhëzime të kuptueshme. Është si një poet që u përgjigjet pyetjeve virtuale, duke u dhënë atyre kuptim dhe drejtim. Kodet e përgjigjes nuk janë gjithmonë kode gabimi HTTP. Për shembull, "200 OK" do të thotë se gjithçka është në rregull, por gabimi HTTP "404 nuk u gjet" do të thotë kur faqja humbet në hapësirën virtuale. Çdo kod është një shprehje unike e gjendjes së serverit, dekodimi i të cilit na lejon të kuptojmë se çfarë po ndodh në anën tjetër të botës virtuale.
Kodet 1xx (Informacion)
Kodet e statusit 1xx në protokollin HTTP janë një lloj lidhje e parë në dialogun midis serverit dhe klientit. Në vend që të japin një përgjigje të plotë ndaj një kërkese, ata ofrojnë informacion për statusin aktual, duke e bërë shkëmbimin e të dhënave më efikas. Le t'i hedhim një vështrim më të afërt në to:
100 Vazhdo. Kodi i përgjigjes HTTP në të cilin serveri i jep dritën jeshile përdoruesit, duke e lejuar atë të vazhdojë me siguri të dërgojë një kërkesë të madhe.
101 Protokollet e ndërrimit. Serveri i tregon klientit se po ndryshon rregullat e lojës, për shembull, duke lëvizur nga HTTP në HTTPS më të sigurt. Në këtë rast, titulli "Përmirësimi" përdoret për ndryshimin e protokollit.
102 Përpunimi. Ky kod është si një mesazh që serveri e ka pranuar kërkesën, por është ende i zënë me një operacion kompleks.
103 Këshilla të hershme. Këtu serveri i dërgon klientit disa tituj tregues para përgjigjes kryesore, duke paralajmëruar për diçka që mund të jetë e rëndësishme në të ardhmen e afërt.
Kodi 2xx (i suksesshëm)
Kodet e gabimit HTTP në grupin 2xx tregojnë një kërkesë të suksesshme nga serveri. Ato në thelb veprojnë si një "dritë jeshile" në fushën e komunikimit në internet, duke konfirmuar se gjithçka po shkon sipas planit dhe është përfunduar me sukses.
200 OK. Ky status përdoret kur serveri përpunon një kërkesë me metodën GET pa probleme dhe kthen të dhënat e kërkuara si përgjigje. Kreu "Content-Type" raporton llojin e përmbajtjes në përgjigje. Thjesht informon klientin se kërkesa ishte e suksesshme.
201 u krijua. Këtu serveri njofton krijimin e një burimi të ri.
202 Pranuar. Serveri i bën të ditur përdoruesit se kërkesa është pranuar, por do të duhet kohë për t'u përgjigjur.
203 Informacion jo-autoritativ. Ky kod i siguron klientit të dhëna që mund të mos jenë zyrtare, por mund të përdoren për krahasim.
204 Nuk ka përmbajtje. Serveri e ka përpunuar kërkesën, por nuk po kthen asnjë përmbajtje shtesë.
205 Rivendosni përmbajtjen. Këtu klienti udhëzohet të rivendosë pamjen ose të dhënat aktuale pas dërgimit.
206 Përmbajtja e pjesshme. Ky rast tregon se përgjigja përmban vetëm një pjesë të përmbajtjes së kërkuar. Kreu "Content-Range" tregon gamën e pjesshme të përmbajtjes.
207 Multi-Status. Serveri ka përfunduar me sukses një kërkesë me shumë operacione nga klienti dhe përgjigja përmban informacione për statusin e secilit prej operacioneve.
226 IM i përdorur. Ky kod tregon se serveri përdori metodën Incremental Metadata (IM) dhe u përgjigj duke i kaluar klientit vetëm pjesët e modifikuara të burimeve.
Kodet 3xx (Ridrejtimet)
Kodet 3xx në protokollin HTTP janë si tregues që e drejtojnë përdoruesin në një vendndodhje të re burimi. Ata informojnë klientin se duhet të ndërmerren hapa pasues për të marrë përmbajtjen e kërkuar ose për t'u ridrejtuar në një burim tjetër. Le të zhytemi në detajet e secilit prej tyre:
300 Zgjedhje të Shumëfishta. Klienti merr një sinjal se ka disa vendndodhje të mundshme për burimin dhe i jepet një zgjedhje si përgjigje. Në rrethanat aktuale, titulli "Vendndodhja" mund të tregojë opsione alternative për burimin.
301 Lëvizur përgjithmonë. Serveri i raporton përdoruesit se burimi është zhvendosur përgjithmonë në një vend tjetër.
302 Gjetur. Ky kod HTTP është i ngjashëm me një ridrejtim të përkohshëm. Serveri informon konsumatorin se burimi është i disponueshëm përkohësisht në një URL tjetër. Kreu "Vendndodhja" tregon URL-në e re për ridrejtimin e përkohshëm.
303 Shih Tjetër. Klientit i thuhet se burimi është i disponueshëm në një URL tjetër dhe duhet të bëjë një kërkesë GET në këtë adresë të re.
304 nuk është ndryshuar. Ky status i tregon klientit se burimi ka mbetur i pandryshuar që nga kërkesa e fundit dhe nuk ka nevojë të shkarkohet përsëri. Kur bëni një kërkesë, titulli "If-Modified-Since" përdoret për të kontrolluar nëse burimi është modifikuar.
305 Përdor Proxy. Si përgjigje, serveri raporton se duhet të përdorë përfaqësuesin e specifikuar për të hyrë në burimin e kërkuar.
306 (e rezervuar) — Kodi është rezervuar, por në fakt nuk përdoret.
307 Ridrejtimi i përkohshëm. Ky kod është i ngjashëm me 302 Found, por kërkon që klienti të qëndrojë në metodën e kërkesës që është përdorur në kërkesën origjinale.
308 Ridrejtime të përhershme. Tregon që burimi ka bërë një lëvizje të përhershme në një URI të re dhe klienti duhet të përdorë URI-në e re për të gjitha kërkesat e ardhshme.
Gabim 4xx HTTP (gabimet e klientit)
Kodet e gabimit HTTP 4xx tregojnë gabime të klientit. Kjo do të thotë që problemi është në anën e përdoruesit, si p.sh. shfletuesi i internetit ose aplikacioni.
Kërkesa e gabuar 400. Serveri nuk mund ta përpunojë kërkesën për shkak të gabimeve sintaksore, të dhënave të pavlefshme ose gabimeve të tjera në anën e klientit.
401 I paautorizuar. Serveri nuk mund ta përpunojë kërkesën për shkak të gabimeve sintaksore, të dhënave të pavlefshme ose gabimeve të tjera në anën e klientit.
402 Kërkohet pagesa. Kodi nuk është aktiv për momentin dhe është i rezervuar për përdorim në të ardhmen. Mund të tregojë nevojën për të paguar përpara se të aksesoni burimin në të ardhmen.
Gabim HTTP 403 i ndaluar. Klienti nuk ka të drejta të mjaftueshme për të hyrë në burimin e kërkuar.
404 Nuk u gjet. Burimi i kërkuar nuk ekziston në server. Ky është një nga gabimet më të zakonshme të përdoruesve.
Metoda 405 nuk lejohet. Serveri nuk e mbështet metodën e specifikuar të kërkesës gjatë këtij burimi. Kreu "Lejo" tregon metodat e lejuara për burimin. Me këtë kod,
406 E papranueshme. Serveri nuk mund të sigurojë të dhëna në një format që mund të pranohet nga klienti.
407 Kërkohet vërtetimi i përfaqësuesit. Autentifikimi në serverin proxy kërkohet për të hyrë në burimin e kërkuar.
408 Koha e skadimit të kërkesës. Serveri po priste të merrte një kërkesë nga klienti, por skadoi. Kreu "Riprovo-Pas" mund të tregojë kohën pas së cilës kërkesa mund të riprovohet.
409 Konflikti. Kërkesa nuk mund të plotësohet për shkak të një konflikti me gjendjen aktuale të burimit.
410 Iku. Burimi i kërkuar ka ekzistuar më parë, por tani është fshirë dhe nuk pritet restaurimi i tij.
411 Gjatësia e kërkuar. Serveri kërkon të specifikojë gjatësinë e përmbajtjes në kërkesë; mungesa e këtij informacioni konsiderohet gabim.
412 Parakushti dështoi. Nuk plotësohet një parakusht në kërkesë, që e pengon atë të ekzekutohet.
413 Ngarkesa shumë e madhe. Madhësia e të dhënave të kërkesës tejkalon kufijtë e serverit.
414 URI shumë e gjatë. Gjatësia e URI-së në kërkesë i kalon kufijtë e pranueshëm.
415 Lloji i medias së pambështetur. Serveri nuk mund të përpunojë llojin e të dhënave të dhënë në kërkesë.
416 Gama nuk është e kënaqshme. Gabim HTTP ku diapazoni i kërkuar nuk përputhet me të dhënat aktuale të serverit.
417 Pritshmëria dështoi. Kushti i pritur në kokën "Prit" nuk u plotësua.
418 Unë jam çajnik. Ky kod është përfshirë si shaka dhe nuk nënkupton ndonjë veprim real për përdoruesin ose serverin dhe nuk është një gabim i plotë. Tregon që serveri është një çajnik dhe nuk është në gjendje të bëjë kafe.
421 Kërkesë e drejtuar keq. Serveri nuk e përpunon kërkesën për shkak të një gabimi në kërkesë ose në konfigurimin e serverit.
422 Ent i papërpunueshëm. Serveri e kupton kërkesën, por nuk e përpunon atë për shkak të gabimeve të të dhënave.
423 E kyçur. Burimi është i bllokuar dhe nuk mund të përpunohet.
424 Varësia e dështuar. Kërkesa varet nga një kërkesë tjetër e paekzekutuar.
425 Shumë herët. Serveri nuk është gati të përpunojë kërkesën për shkak të ardhjes së hershme të saj.
426 Kërkohet përmirësim. Serveri kërkon përdorimin e një protokolli më të avancuar për të përpunuar kërkesën.
428 Kërkohet parakusht. Serveri kërkon disa parakushte që të specifikohen në kërkesë.
429 Shumë kërkesa. Klienti dërgoi shumë kërkesa në një kohë të shkurtër, duke tejkaluar kufijtë e serverit.
431 Fushat e kokës së kërkesës janë shumë të mëdha. Titujt e kërkesave tejkalojnë madhësinë maksimale të lejuar.
449 Riprovo me. Tregon që kërkesa nuk mund të ekzekutohet nga serveri aktual, por mund të përpunohet me sukses nga një server tjetër dhe klienti duhet ta riprovojë kërkesën me një URI të ri.
451 E padisponueshme për arsye ligjore. Burimi nuk është i disponueshëm për arsye ligjore.
499 Kërkesë e mbyllur nga klienti. Serveri mori kërkesën, por lidhja u mbyll nga klienti përpara përfundimit të përpunimit.
Gabim HTTP 5xx (Gabimet e serverit)
Kodet e gabimit HTTP 5xx tregojnë problemet e serverit. Këto kode tregojnë probleme që kanë ndodhur në anën e serverit, duke e bërë serverin të paaftë të përpunojë kërkesën e përdoruesit në mënyrën e duhur. Le t'i hedhim një vështrim më të afërt në to:
Gabim HTTP 500 Gabim i brendshëm i serverit. Serveri has në rrethana të papritura që e pengojnë atë nga plotësimi i kërkesës Kreu "Server" mund të tregojë serverin në të cilin ka ndodhur gabimi.
501 Nuk zbatohet. Serveri nuk mbështet funksionalitetin e kërkuar për të përpunuar kërkesën e klientit. Kreu "Via" mund të tregojë serverin proxy përmes të cilit ka ndodhur gabimi.
Gateway Bad 502. Ky kod do të thotë që serveri që vepron si përfaqësues ka marrë një përgjigje të pasaktë nga një server tjetër.
HTTP gabim 503 Shërbimi i padisponueshëm. Serveri nuk mund të përpunojë përkohësisht kërkesat.
Kohëzgjatja e 504 Gateway. Serveri, që vepron si përfaqësues, nuk mori një përgjigje në kohë nga një server tjetër.
505 Versioni HTTP Nuk mbështetet. Serveri nuk e mbështet versionin e protokollit HTTP të specifikuar në kërkesë. Si opsion rezervë, titulli "Përmirëso" mund të tregojë protokollet e mbështetur.
506 Varianti Gjithashtu Negocion. Ky status nuk përdoret në HTTP/1.1; megjithatë, nëse serveri zbulon një konfigurim të brendshëm që rezulton në paqartësi të negociatave të përmbajtjes, ai mund ta përdorë këtë përgjigje.
507 Ruajtja e pamjaftueshme. Serveri nuk mund ta përmbushë kërkesën për shkak të hapësirës së pamjaftueshme të ruajtjes në server.
508 Loop Zbuluar. Serveri ka zbuluar një lak gjatë përpunimit të kërkesës dhe refuzon të plotësojë kërkesën për të shmangur një lak të pafund.
509 Kufiri i gjerësisë së brezit u tejkalua. Gabimi ndodh kur gjerësia e brezit të serverit tejkalohet për shkak të vëllimit të lartë të kërkesave ose trafikut.
510 Nuk është zgjeruar. Klienti duhet të transferojë shtesa shtesë për të vazhduar kërkesën.
511 Kërkohet vërtetimi i rrjetit. Klienti duhet të vërtetohet në mënyrë që të ketë akses në rrjet.
Si të kontrolloni kodin e statusit të faqes
Në këtë seksion, ne do të shqyrtojmë tre mënyra kryesore për të kontrolluar kodin e statusit të faqes: nëpërmjet linjës së komandës, duke përdorur një shfletues uebi dhe duke përdorur shërbime të pavarura në internet. Secila prej këtyre metodave ka avantazhet e veta dhe mund të jetë e dobishme në situata të ndryshme.
Kontrollimi i përgjigjes së serverit përmes linjës së komandës
Linja e komandës ofron një mënyrë të përshtatshme për të kontrolluar kodin e statusit të faqes pa pasur nevojë të përdorni një shfletues në internet. Për këtë metodë, duhet të hapni vijën e komandës dhe të përdorni komandën:
curl -I http://page-address
Kjo komandë dërgon një kërkesë HEAD (kërkesë vetëm për titujt) në URL-në e specifikuar dhe shfaq informacione duke përfshirë kodin e statusit HTTP:
Shembulli i mësipërm tregon një kod të suksesshëm përgjigjeje. Në rastin e një përgjigjeje që përmban një kod gabimi, siç është gabimi 404 Not Found HTTP, rezultati do të duket i ngjashëm:
Kontrollimi i përgjigjes së serverit përmes tastierës së shfletuesit
Konsola e zhvilluesit të shfletuesit të internetit ofron mjete për kryerjen e operacioneve të ndryshme, duke përfshirë kontrollimin e kodit të statusit të faqes. Për të parë kodin HTTP në përgjigjen e serverit, duhet të hapni tastierën e zhvilluesit (Ctrl+Shift+K) ose (Ctrl+shift+J) në varësi të shfletuesit të përdorur. Tjetra, zgjidhni seksionin "rrjet" dhe ngarkoni faqen e dëshiruar:
Kontrollimi i përgjigjes së serverit duke përdorur mjete të pavarura
Ka një numër të madh shërbimesh të pavarura në internet që ofrojnë mjete për të kontrolluar kodin e statusit të faqes së internetit. Këto shërbime zakonisht ju lejojnë të merrni shpejt një pasqyrë të disponueshmërisë dhe performancës së burimit tuaj. Ata të gjithë funksionojnë duke përdorur të njëjtin parim. Si shembull, ne do të shqyrtojmë burimin më të njohur - httpstatus.io
Para së gjithash, duhet të hapni vetë shërbimin, më pas të futni adresën e faqes së cilës përgjigje duhet të zbuloni dhe të kërkoni verifikimin:
Rezultati do të shfaqet në fund të faqes:
Përfundim
Si përfundim, duhet theksuar se të kuptuarit dhe aftësia për të lexuar kodet e gabimit HTTP është një aftësi kyçe për këdo që është i përfshirë në zhvillimin e ueb-it dhe mirëmbajtjen e serverit. Ndërsa kuptojmë çdo gabim dhe eksplorojmë mjetet për t'i zbuluar ato, shohim arsyet pse është kaq e rëndësishme të menaxhohen në mënyrë efektive këto aspekte të shërbimeve të internetit.