Ce semnificație au erorile HTTP(S) și care sunt potențialele rezolvări

La accesarea unor resurse web pot fi afișate pagini ce conțin un cod de eroare și, de obicei, și un mesaj suplimentar cu privirea la condiția care a dus la apariția erorii. Exemplul cel mai popular în acest sens este eroarea 404 („Not found”), ce semnifică inexistența resursei web accesate.

Există numeroase erori HTTP, clasificate astfel încât să fie ușor de identificat. Cunoscând chiar și la nivel simbolic semnificația acestora te va ajuta să înțelegi cauza erorii, eventual să o rezolvi în timp util.

În continuare sunt explicate cele mai comune erori HTTP care pot apărea ca urmare a accesării unei resurse web în browser. În funcție de caz, vor fi date și soluții de rezolvare a acestora.

Erori HTTP



Clasificarea răspunsurilor HTTP

Codurile de răspuns corespunzătoare cererilor transmise prin intermediul protocolului HTTP sunt compuse din 3 cifre și sunt grupate în funcție de tipul de rezultat obținut. Prima cifră este cea cu rol de clasificare a tipului de răspuns:
  • 1xx – folosite pentru a transmite informații client-server;
  • 2xx – folosite pentru a indica succesul comunicării client-server;
  • 3xx – folosite pentru efectuarea redirecționării către alte resurse web;
  • 4xx – folosite pentru a indica erori ce țin de client;
  • 5xx – folosite pentru a indica probleme pe partea de server.
Dintre acestea, doar erorile de tipul 4xx și 5xx vor fi afișate în browser-ul clientului, expunând probleme fie pe partea de client (calculatorul utilizatorului), fie pe partea de server (ansamblu de hardware, software și de date corespunzător resursei de internet accesată).

Despre eroarea 400 – Bad request (Cerere eronată)

Datele transmise de către browser nu respectă protocolul HTTP, prin urmare, server-ul nu poate înțelege conținutul primit. Este vorba deci de o malformație a datelor care ajung la server, fie pentru că transmiterea de date prin rețea se face într-un mod eronat, fie pentru că datele sunt eronate sau incomplete, ceea ce indică o problemă cu browser-ul, respectiv cu aplicația care trimite acele date, eventual cu sistemul de operare al clientului.

Ce poți face?

Cea mai rapidă încercare de soluționare a erorii este să ștergi cache-ul salvat pentru resursa web accesată –  poți face acest lucru prin reîmprospătarea paginii accesate, apăsând combinația de taste Shift + F5 în Chrome, Ctrl + Shift + F5 în Firefox. În cazul browserelor pentru mobile, această operație se face prin ștergerea cache a istoricului de navigare sau accesarea resursei în modul incognito.

Următorul pas este să verifici dacă problema există la nivelul calculatorului sau doar al browser-ului pe care-l folosești în mod curent. Deschide resursa web care a dus la apariția erorii 400 și în alte browsere. Dacă rezultatul este același, problema este fie cauzată de modificarea unor politici de securitate a sistemului, fie de erorile de transmitere a datelor spre server prin rețea, mai ales dacă o astfel de eroare apare la accesarea de multiple pagini web.

Despre eroarea 401 – Authorization Required (Neautorizat)

Pagina web (sau resursa web) pe care ai accesat-o este protejată printr-o parolă la nivelul server-ului. Pagina ce conține eroarea 401 va deschide de obicei și o fereastră de dialog prin care se cere datele de autentificare.

Rezultă, așadar, că resursa accesată este privată, și doar anumiți utilizatori o pot accesa – aceia desemnați de către administrator, care se pot autentifica. Dacă ai introdus datele de logare și în trecut, apariția erori semnifică faptul că sesiunea a expirat, fiind necesară relogarea.

Despre eroarea 403 – Forbidden (Interzis)

Server-ul înțelege cererea clientului, deci nu este vorba de o malformație de date (precum în cazul erorii 400), însă refuză să o îndeplinească, fără să furnizeze motivul pentru care se întâmplă acest lucru.

De obicei, acest tip de eroare este afișat atunci când se încearcă accesarea unui folder de pe server însă administratorul resursei resursei web a interzis afișarea directoarelor. Un alt caz când apare eroarea 403 mai este acela în care nu este permisă accesarea directă a resursei, ci doar preluarea folosind funcționalitățile site-ului.

Despre eroarea 404 – Not Found (Negăsit)

Resursa accesată nu există pe server. Acest lucru se întâmplă din două motive:
1. Adresa URL către resursă a fost preluată/tastată greșit sau structura site-ului a fost modificată și nu mai este cea actuală.
2. Resursa web accesată nu există pe server, însă se poate să fi existat în trecut, dar să fi fost ștearsă sau mutată la o altă adresă URL.

Dacă eroarea apare la accesarea primei pagini a site-ului, atunci acest lucru sugerează uzual faptul că site-ul a fost mutat recent pe un alt server web, iar înregistrările DNS încă nu s-au actualizat, astfel că se accesează vechiul server, în care, momentan, nu mai există nicio pagină web. În acest caz, eroarea va dispărea în maxim 24 de ore, odată cu propagarea noilor înregistrări în servere-le DNS globale.

Despre eroarea 408 – Request Time-Out (Cerere expirată)

Interacțiunea dintre browser și server se desfășoară prea lent, de aceea, server-ul închide conexiunea creată cu browser-ul și afișează mesajul de eroare cu codul 408: Request Time-Out, economisind astfel la nivel de server resurse de procesare și bandă de conexiune. Acest lucru se întâmplă atunci când fie browser-ul (sau sistemul pe care rulează browser-ul), fie server-ul este suprasolicitat (la nivel de memorie RAM sau de procesare), neputând astfel realiza interacțiunea client-server într-un timp rezonabil.

Eroarea apare și atunci când există o conexiune slabă la internet sau un trafic mare în rețeaua locală, lucru care îngreunează recepționarea / transmiterea datelor prin rețea dinspre / către server.

Ce poți face?

La nivel de client, poți reinițializa conexiune client-server prin reîmprospătarea pagini web accesate, poți închide sau opri programele sau activitățile care sunt mari consumatoare de memorie RAM, CPU sau de bandă de rețea.

La nivel de server, din perspectiva clientului, nu se poate face altceva decât reaccesarea ulterioară a resursei – server-ul care gestionează resursa ar putea fi accesat de un număr de ori care depășește limita fizică suportată de server.

Despre eroarea 410 – Gone

Indică faptul că resursa accesată nu există pe server, însă aceasta a existat în trecut, dar a fost eliminată temporar sau permanent.

Eroarea este asemănătoare cu cea 404, cu diferența că 404 indică incertitudine dacă resursa respectivă a existat sau mai există în cadrul site-ului asociat, în timp ce 410 indică faptul că resursa a exista pe server în trecut și a fost eliminată intenționat de către administratorul web, dorindu-se în acest mod, printre altele, eliminarea URL-ului către resursă de pe motoarele de căutare sau expunerea faptului că o anumită resursă a fost ștearsă.

Despre eroarea 500 – Internet Server Error (Eroare interă de server)

Server-ul întâmpină o situație neașteptată, ceea ce-l împiedică să îndeplinească cererile clienților. Eroarea 500 este una cu caracter general, fiind afișată atunci când toate celelalte erori care pot apărea pe partea de server, de tipul 5xx, sunt excluse.

Eroarea 500 apare de regulă atunci când sunt definite incorect permisiunile de acces la date, există  fișiere .htaccss corupte sau nu există suficientă memorie pentru a procesa cererile primite.

Deși o eroare 5xx este pe partea de server, poți încerca să soluționezi eroarea prin reîmprospătarea paginii, ștergerea cache-ului din browser, ștergerea cookie-urilor sau prin redeschiderea browserului.

Despre eroarea 502 – Bad Gateway (Ieșire eronată)

Există o problemă în comunicația dintre server-ul web accesat și un alt server, accesat pentru a se putea furniza un răspuns cererii clientului, de exemplu, un server care gestionează o bază de date, care este separat de serverul care gestionează cererile web ale clienților.

Eroarea apare fie pentru că server-ul proxy este inactiv, fie pentru că nu există un protocol de comunicare care să fie acceptat de ambele servere – lucru care sugerează că există o problemă de configurație sau de programare la nivel de server, respectiv de aplicație.

Despre eroare 503 – Service Temporarily Unavailable (Serviciu nedisponibil temporar)

Server-ul nu este activ pentru accesările de pe web. Eroarea 503 mai poate avea și mesajul Out of Resources, sugerând faptul că momentan nu se poate prelua cererile clienților datorită unui număr mare de accesări.

Un alt caz de apariție al erorii este atunci când au loc actualizări la nivelul server-ului, care necesită scoaterea din uz a sistemului sau a anumitor servicii care rulează pe acesta.

Despre eroarea 504 – Gateway Time-Out (Poartă / ieșire eronată)

Comunicația dintre server-ul accesat de client și un server extern necesar pentru a realiza cererea clientului durează neașteptat de mult, drept urmare, serverul va închide comunicația cu serverul extern și va returna mesajul de eroare Gateway Time-Out.

Apariția erorii ar putea semnifica existența unui trafic intens între server-ul web și alte servere back end sau viceversa, respectiv probleme de conectivitate sau posibilitatea ca server-ul sau serverele din back end să fie imposibil de accesat.

***

Acest articol se dorește a fi un mini ghid al erorilor HTTP pentru utilizatorii care accesează resurse web și intră în contact cu pagini de eroare. Pentru programatori, webmasteri, dar și pentru specialiștii SEO, informațiile despre erorile HTTP au, de regulă, explicații mult mai ample.

Lista cu toate codurile de stare corespunzătoare răspunsurilor HTTP sau HTTPS o găsești mai jos.

Cereri acceptate cu succes
200 OK
201 Created
202 Accepted
203 Non-Authorative Information
204 No Content
205 Reset Content
206 Partial Content

Cereri de client redirecționate
300 Multiple choices
301 Moved Permanently
302 Moved Temporarly
303 See Other
304 Not Modified
305 Use Proxy

Cereri de client eronate
400 Bad request
401 Authorisation Required
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable (encoding)
407 Proxy Authentification Required
408 Request Timed Out
409 Conflicting Request
410 Gone
411 Content Lenght Required
412 Precondition Failed
413 Request Entity Too Long
414 Request URI Too Long
415 Unsupported Media Type

Erori de server
500 Internat Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported