Coduri de raspuns ale serverului

Postat pe: 23 Sep, 2010

De fiecare data cand este transmisa o cerere catre server pentru accesarea unui site, serverul trimite un cod drept raspuns la cererea facuta.

In cazul in care te-ai intrebat ce inseamna unele coduri pe care le vezi sau daca ai nevoie sa sti care sunt cele mai comune coduri pe care serverul le emite, atunci te invit sa arunci o privire peste lista de mai jos.

Inainte de toate insa, ar trebui mentionat faptul ca exista 5 tipuri de raspunsuri pe care serverul le emite:

  • 1XX – sau coduri de informare “cerere inregistrata, se continua procesul”
  • 2XX – sau coduri de confirmare a succesului actiunii – cererea a fost primita, inteleasa, acceptata si indeplinita cu success
  • 3XX – sau coduri de redirectionare – utilizatorul trebuie sa indeplineasca taskuri suplimentare pentru indeplinirea cererii
  • 4XX – Client error – cele mai cunoscute coduri intalnite de catre utilizatorii internetului, codurile de tipul 4XX arata ca utilizatorul a intampinat o problema
  • 5XX – Server error – serverul nu a indeplinit o actiune apparent valida

Iar acum, iata o lista cu cele mai comunce coduri/erori din fiecare categorie in parte:

Coduri 1XX:

  • 100 Continue – Serverul trimite acest cod pentru a indica faptul ca a primit prima parte a unei cereri iar actiunea/procesul inceput poate fi continuat.
  • 101 Switching Protocols – Solicitantul a cerut serverului sa comute protocoalele iar serverul confirma ca urmeaza sa indeplineasca acest task
  • 102 Processing – Acest cod indica faptul ca serverul a primit si prelucreaza cererea, dar nici un raspuns nu este disponibil inca. Acest lucru il ajuta pe utilizator sa nu inchida cererea presupunand ca informatia a fost pierduta.

Coduri 2XX:

  • 200 OK – Serverul a procesat cu succes solicitarea. In general, acest lucru inseamna ca serverul a afisat pagina solicitata
  • 201 Created – Cererea a fost indeplinita cu succes, iar serverul a creat o noua resursa.
  • 202 Accepted -Serverul a acceptat solicitarea, dar inca nu a prelucrat-o.
  • 203 Non-Authoritative Information – Serverul a procesat cu succes solicitarea, dar returneaza informatii care pot fi din alta sursa.
  • 204 No Content – Serverul a procesat cu succes solicitarea, insa nu returneaza niciun continut.
  • 205 Reset Content – Serverul a procesat cu succes solicitarea, dar nu se intoarce niciun continut. Spre deosebire de un raspuns 204, acest raspuns il obliga pe solicitant sa re-seteze documentul.
  • 206 Partial Content – Serverul a procesat cu succes o solicitare GET partiala.
  • 207 Multi-Status – Corpul mesajului care urmeaza este un mesaj XML si poate contine un numar de coduri de raspuns separate, in functie de cat de multe sub-cereri au fost facute.

Coduri 3XX:

  • 300 Multiple Choices – In urma cererii serverul are cateva actiuni disponibile. Serverul poate alege o actiune pe baza solicitantului (user agent) sau poate prezenta o lista astfel incat solicitantul poate alege o actiune.
  • 301 Moved Permanently – Pagina solicitata a fost mutata permanent intr-o nou loc. Cand serverul afiseaza acest raspuns solicitantul este in mod automat redirectionat in noul loc.
  • 302 Found – reprezinta unul dintre cele mai populare coduri de redirectionare
  • 303 See Other – Raspuns la solicitare poate fi gasit sub un alt URI folosind o metoda GET. Cand este primit ca raspuns la o cerere, ar trebui sa se presupuna ca serverul a primit date de redirectionare si trebuie sa emita un mesaj separat GET
  • 304 Not Modified – Pagina solicitata nu a fost modificat de la ultima solicitare. Cand serverul returneaza acest raspuns, nu returneaza si continutul paginii.
  • 305 Use Proxy AscultaţiCitiţi fonetic – Solicitantul poate accesa pagina dorita numai utilizand un proxy. Cand serverul returneaza acest raspuns, indica, de asemenea si proxy-ul pe care solicitantul ar trebui sa-l foloseasca.
  • 307 Temporary Redirect – Serverul raspunde solicitarii cu o pagina dintr-o locatie diferita, dar solicitantul trebuie sa continue sa utilizeze locatia originala pentru cererile viitoare. Acest cod este similar cu un 301 in faptul ca pentru o solicitare GET sau HEAD, se redirectioneaza automat solicitantul spre o locatie diferita, dar nu trebuie sa il utilizati pentru a informa Googlebot ca pagina sau site-ul au fost mutate, deoarece Googlebot va continua sa acceseze cu crawlere si sa indexeze locatia originala.

Coduri 4XX:

  • 400 Bad Request – cererea nu poate fi indeplinita din cauza unei greseli de scriere
  • 401 Unauthorized – Cererea necesita autentificare. Serverul ar putea returna acest raspuns pentru o pagina din spatele unui login.
  • 402 Payment Required – Rezervat pentru utilizare viitoare. Intentia initiala a fost ca acest cod sa fie folosite ca parte a unor forme de numerar digital sau sistem de micropayment. Acest lucru nu a fost inca implementat la scare globala, asa ca, momentan, inca nu este folosit in mod frecvent. Un exemplu de folosire al acestuia reprezinta serviciul Apple MobileMe care genereaza o eroare 402 in cazul in care contul MobileMe este delicvent.
  • 403 Forbidden – Cererea este recunoscuta si este legala, dar serverul refuza sa raspunda la ea. Spre deosebire de un raspuns 401 Unauthorized, in cazul acesta autentificarea nu va avea niciun efect.
  • 404 Not Found – Resursa solicitata nu a putut fi gasita, dar exista posibilitatea sa fie disponibila din nou in viitor.
  • 405 Method Not Allowed – a fost facuta o cerere folosind o metoda nesuportata de catre server
  • 406 Not Acceptable – Resursa solicitata este capabila de a genera doar continut care nu este acceptat de antetul Accept trimis in cerere.
  • 407 Proxy Authentication Required
  • 408 Request Timeout – The server timed out waiting for the request.
  • 409 Conflict – indica faptul ca cererea nu a putut fi procesata din cauza conflictului din cerere, cum ar fi un conflict modifica
  • 410 Gone – Serverul trimite acest raspuns atunci cand resursa solicitata a fost eliminata definitiv. Este similar cu un 404 (Not Found), cu diferenta ca este utilizat pentru resursele care nu mai exista si nu se va intampla sa apara nici pe viitor. Daca resursa a fost mutata permanent, trebuie sa utilizati un 301 pentru a specifica locatia noua a resursei.
  • 411 Length Required
  • 412 Precondition Failed – Serverul nu respecta una din conditiile prealabile pe care solicitantul i le-a cerut
  • 413 Request Entity Too Large – Cererea este prea mare fata de ceea ce serverul este dispus sau capabil sa proceseze
  • 414 Request-URI Too Long – URI-ul oferit este prea lung ca serverul sa il poata procesa
  • 415 Unsupported Media Type – Cererea este intr-un format nesuportat de catre pagina solicitata.
  • 416 Requested Range Not Satisfiable – Serverul trimite acest cod de stare daca solicitarea este pentru o gama care nedisponibila pentru pagina.
  • 417 Expectation Failed
  • 418 I’m a teapot – este un cod special creat pentru ziua de 1 aprilie asa ca nu ne asteptam sa il vedem implementat in prea multe site-uri J
  • 422 Unprocessable Entity (WebDAV) (RFC 4918) – Cererea a fost bine format, dar nu a putut fi indeplinita din cauza erorilor semantice
  • 423 Locked (WebDAV) (RFC 4918) – informatia accesata este inchisa
  • 426 Upgrade Required
  • 449 Retry With
  • 450 Blocked by Windows Parental Controls

Coduri 5XX:

  • 500 Internal Server Error – serverul a intampinat o problema si nu mai poate indeplini cererea
  • 501 Not Implemented – Serverul nu are capacitatea de a indeplini cererea. De exemplu, serverul ar putea returna acest cod atunci cand nu recunoaste metoda de solicitare.
  • 502 Bad Gateway – Serverul a actionat ca un gateway sau proxy si a primit un raspuns nevalid de la un alt server.
  • 503 Service Unavailable – serverul este indisponibil. De obicei, este o problema temporara
  • 504 Gateway Timeout – Serverul a actionat ca un gateway sau proxy si nu a primit un raspuns in timp util comanda
  • 505 HTTP Version Not Supported