Codurile de stare HTTP. Un ghid complet pentru codurile de stare HTTP

Să continuăm să ne familiarizăm cu protocolul HTTP în secțiunea și secțiunea acestuia. Astăzi vom începe să înțelegem codurile de stare ale serverului HTTP și, în mod specific, această publicație vă va prezenta clasele de coduri de stare ale serverului HTTP: veți înțelege cum răspunde serverul HTTP la solicitările din browserul dvs. și care sunt toate aceste numere care apar periodic în fereastra browserului. Permiteți-mi să fac o rezervare imediat că există un total de cinci clase de coduri de stare în standardul HTTP și fiecare clasă conține mai multe coduri de stare care pot fi extinse în funcție de aplicația HTTP.

Coduri HTTP 1xx – coduri informaționale. Codurile HTTP 2xx sunt coduri de succes. Cod HTTP 3xx – coduri de redirecționare. Cod HTTP 4xx – coduri de eroare client. Cod HTTP 5xx – coduri de eroare ale serverului.

Dacă doriți să știți, vă rugăm să consultați .Codul de stare este un element de răspuns care are trei cifre, prima cifră indică care clasa de stat se referă la asta sau aia. Există doar cinci clase de coduri de stare în HTTP.: 1xx, 2xx, 3xx, 4xx, 5xx. Codurile de stare HTTP sunt extensibile; orice dezvoltator de server își poate adăuga propriile coduri. Fiecare cod de stare este foarte strâns legat de: dacă metoda este un element, atunci codul de stare este serverul, ceea ce înseamnă modul în care serverul a înțeles cererea.

Să rezumăm codurile de stare HTTP într-un singur tabel, împărțind codurile în clase și să dăm descrierea fiecărei clase de stare a serverului HTTP.

Număr HTTP codul de stare și descrierea acestuia
1 HTTP 1xx coduri de stare: Serverul trimite acest cod de stare atunci când o solicitare a fost primită, dar nu a fost încă procesată.
2 HTTP coduri de stare 2xx:
Serverul vă va trimite acest cod când a acceptat și procesat cu succes clientul.
3 HTTP coduri de stare 3xx:
Dacă primiți un cod de stare care începe cu un trei de la server, aceasta înseamnă că sunt necesari pași suplimentari pentru a finaliza procesul de procesare a cererii HTTP.
4 HTTP coduri de stare 4xx:

Atunci când browserul pentru browser pentru a accesa pagina de navigare web trimite o solicitare la serverul de unde este web. Când browserul primește și afișează prima pagină, serverul pe care acea pagină va returna (antetul serverului) un cod de stare HTTP pentru a răspunde la cerere conține browserul.

Codurile de stare HTTP în engleză pentru codul de stare HTTP.

Iată câteva coduri de stare HTTP comune:

  • 200-- cererea a avut succes
  • 301-- resursele (pagini web etc.) sunt mutate constant la o altă adresă URL
  • 404 - resursele (pagini web, etc.) solicitate nu există
  • 500 - Eroare internă de server

Codul de clasificare a stării HTTP

Codul de stare HTTP este format din trei cifre zecimale, primul număr zecimal definește tipul codurilor de stare, ultimele două cifre au efect neclasificat. Codul de stare HTTP este împărțit în cinci tipuri:

Lista codurilor de stare HTTP:

Lista codurilor de stare HTTP
Cod de stareCod de stare Nume englezescDescriere chineză
100 continuaContinua. Clientul trebuie să-și continue cererea
101 Schimbarea protocoalelorSchimbarea protocoalelor. Protocolul de comutare a serverului pe baza cererii clientului. Se poate trece doar la un protocol mai avansat, de exemplu pentru a face upgrade la o versiune nouă a protocolului HTTP
200 AmendaSolicitarea a avut succes. Folosit în principal pentru solicitările GET și POST
201 creatA fost creat. Solicitări reușite și o nouă resursă creată
202 AcceptatAcceptat. Am acceptat această solicitare, dar nu am finalizat procesul
203 Informații neautorizateAcces neautorizat la informații. Solicitarea a avut succes. Dar nu în metainformația originală returnată de server, ci o copie
204 Fără conținutGol. Serverul a procesat cu succes, dar nu a returnat conținutul. În absența paginilor reîmprospătate, asigurați-vă că browserul continuă să afișeze documentul curent
205 Resetați conținutulResetați conținutul. Serverul procesează cu succes, terminalul utilizatorului (ex: browser) ar trebui să revină la modul de vizualizare a documentelor. Acest cod de returnare poate șterge câmpurile de formular ale browserului dvs
206 Conținut parțialParte. Serverul a procesat cu succes o parte din cererea GET
300 alegere multiplăVarietate de opțiuni. O solicitare de resurse poate include un număr de articole care corespund returnării unei liste de caracteristici și adrese de resurse către terminalul utilizatorului (de exemplu: browser) Selectați
301 Mutat permanentMutat permanent. Resursa solicitată a fost mutată permanent în noul URI, va returna informații inclusiv noul URI, browserul va fi direcționat automat către noul URI. Orice cerere nouă viitoare trebuie înlocuită cu un nou URI
302 găsitMișcare temporară. Similar cu 301. Dar resursa a fost mutată temporar. Clientul trebuie să continue să folosească URI-ul original
303 Vezi AlțiiVedeți o altă adresă. Similar cu 301. Utilizați Vizualizare solicitări GET și POST
304 NemodificatNemodificat. Resursa solicitată este neschimbată, serverul returnează acest cod de stare, nu returnează nicio resursă. De obicei, clientul memorează în cache resursele vizitate furnizând un antet care indică dorința clientului de a reveni numai după data specificată a resursei modificate
305 Utilizați un server proxyUtilizați un server proxy. Resursa solicitată trebuie să fie accesibilă printr-un server proxy
306 nefolositA fost lăsat nesupravegheat codul de stare HTTP
307 Redirecționare temporarăRedirecționare temporară. Similar cu 302. Folosind cererea GET este redirecționată
400 Cerere greşităExistă o eroare de sintaxă în cererile clientului, serverul nu poate înțelege
401 neautorizatSolicitarea necesită autentificarea utilizatorului
402 Este necesară plataRezervat pentru utilizare ulterioară
403 interzisăServerul a înțeles cererea clientului, dar a refuzat să îndeplinească cererea
404 Nu a fost găsitServerul nu poate găsi resurse (Web) solicitate de client. Cu acest cod, dezvoltatorii site-ului pot seta pagina personală „resursa pe care ați solicitat-o ​​nu a putut fi găsită”.
405 Metoda nu este permisăClientul instruiește, metode interzise
406 Nu este acceptabilServerul nu poate îndeplini cererea pe baza caracteristicilor de conținut solicitate de client
407 Este necesară autentificarea proxySolicitarea necesită o autentificare proxy similară cu 401, dar expeditorul trebuie să folosească autorizarea proxy
408 Solicitare TimeoutServerul așteaptă ca clientul să trimită o solicitare pentru prea mult timp, expirare
409 conflictO coliziune de server pentru a efectua o cerere PUT de client poate returna acest cod atunci când serverul procesează cererea
410 a trecutResursa solicitată de client nu mai există. Spre deosebire de 410 404, dacă o resursă este acum ștearsă definitiv înainte de a putea folosi codul 410, designerul web poate specifica resursele folosind noul cod de locație 301
411 Lungimea necesarăServerul nu a putut procesa un mesaj de solicitare trimis de un client fără lungimea conținutului
412 Condiție preliminară eșuatăCerințe preliminare clientul solicită informații despre eroare
413 Dimensiunea cererii este prea mareDeoarece obiectul de solicitare este prea mare, serverul nu îl poate procesa, deci cererea va fi respinsă. Pentru a preveni solicitările continue ale clientului, serverul poate închide conexiunea. Dacă serverul nu poate procesa doar temporar, acesta va conține informații de răspuns Reîncercați după
414 Solicitare-URI prea mareSolicitarea URI este prea lungă (URI este de obicei o adresă URL), serverul nu poate procesa
415 Tip media neacceptatServerul nu a putut procesa cererea furnizată cu formatele media
416 Intervalul solicitat nu este fezabilSolicitarea clientului Intervalul este nevalid
417 Eroare de așteptareServerul nu poate satisface cererea de antet Expect
500 Internal Server ErrorEroare internă de server și nu s-a putut finaliza solicitarea
501 Nu este implementatServerul nu acceptă funcția solicitată și nu poate îndeplini cererea
502 Poarta proastăCa server gateway sau server proxy primit de la un server la distanță la o solicitare nevalidă
503 Serviciu indisponibilDeoarece este supraîncărcat sau sistemul este în întreținere, serverul nu poate procesa temporar solicitarea clientului. Durata de întârziere, poate fi inclusă în informațiile din antetul serverului Retry-After
504 Timeout GatewayAcționează ca un gateway sau proxy, mai degrabă decât să facă o solicitare în timp util de acces de la un server la distanță
505 Versiunea HTTP nu este acceptatăServerul nu acceptă versiunea protocolului HTTP solicitată și nu finalizează procesarea

Starea HTTP și codurile de eroare sunt ca un mesaj scurt de la server care apare în partea de sus a paginii web. Nu face parte de fapt din pagina web. Acest mesaj, returnat când serverul este contactat, vă informează ce se întâmplă când serverul a primit o solicitare de vizualizare a paginii.

Aceste mesaje sunt returnate de fiecare dată când browserul interacționează cu serverul, chiar dacă nu le vedeți. Codurile de stare HTTP sunt un instrument neprețuit pentru diagnosticarea și corectarea erorilor întâlnite în configurația unui site.

Acest articol oferă cele mai comune coduri de stare și coduri de eroare.

De unde vin?

De fiecare dată când faceți clic pe un link sau introduceți o adresă URL și faceți clic pe „ Intră", browserul trimite o cerere către server. Acesta primește și procesează cererea, apoi trimite înapoi resursele solicitate împreună cu un antet HTTP.

Codurile de stare sunt livrate browserului în antetul HTTP. Deși nu le vezi. Dar când ceva nu merge bine, utilizatorului i se arată un cod de stare în browser. Acesta este modul serverului de a spune: " Ceva nu e în regulă. Iată codul care explică ce anume».

Codul de stare Google HTTP 404

Pentru a vedea codurile de stare pe care browserul nu le afișează în mod normal, veți avea nevoie de instrumente speciale. Există extensii corespunzătoare disponibile pentru browsere populare, cum ar fi Chrome și Firefox. Există, de asemenea, multe servicii pentru afișarea antetelor, cum ar fi Web Sniffer.

Pentru a vedea codul de stare HTTP folosind unul dintre aceste instrumente, căutați linia din partea de sus a raportului care spune „Stare: HTTP/1.1”. După aceasta este codul de stare returnat de server.

Clasele de coduri de stare HTTP

Codurile de stare HTTP sunt împărțite în 5 clase:

  • 100: coduri de informații care indică faptul că solicitarea inițiată de browser este în desfășurare.
  • 200: coduri de solicitare reușite. Returnată atunci când cererea de browser a fost primită, recunoscută și procesată cu succes de către server.
  • 300: Codurile de redirecționare sunt returnate atunci când resursa solicitată este înlocuită cu una nouă.
  • 400: erori http care apar pe partea clientului și indică faptul că există o problemă cu cererea.
  • 500: coduri de eroare ale serverului care indică faptul că cererea a fost acceptată, dar o eroare pe server a împiedicat finalizarea acesteia.

Lista codurilor de stare HTTP

Există peste 40 de coduri diferite de stare a serverului. Dar cele pe care le vei întâlni în mod regulat sunt mai puțin de o duzină. Următoarea este o listă de coduri de stare HTTP:

Cod de stare 200

200: „Totul este în regulă”. Acesta este codul care este returnat atunci când o pagină web sau o resursă se comportă exact conform așteptărilor.

Codurile de stare 300

301: „ Resursa solicitată a fost mutată definitiv" Acest cod este returnat atunci când o pagină web sau o resursă este înlocuită cu o altă resursă. Este folosit pentru a redirecționa permanent adresele URL.

302: Aceasta este o eroare http " Resursa solicitată a fost mutată, dar a fost găsită" Acest cod este folosit pentru a indica faptul că resursa solicitată a fost găsită, dar nu în locația așteptată. Este folosit pentru a redirecționa temporar adresele URL.

304: „ Resursa solicitată nu s-a schimbat de la ultima accesare" Raportează că resursele stocate în memoria cache a browserului nu s-au schimbat. Este folosit pentru a accelera livrarea paginilor web prin reutilizarea resurselor descărcate anterior.

Codurile de stare 400

eroare http 403: " Accesul la această resursă este interzis" Returnat atunci când utilizatorul încearcă să deschidă o resursă pentru care nu are drepturi de acces. De exemplu, un utilizator neautorizat care încearcă să vadă conținut protejat prin parolă poate duce la o eroare 403.

404: „ Resursa solicitată nu a fost găsită" Cel mai frecvent mesaj de eroare. Înseamnă că resursa solicitată nu există și serverul nu știe dacă a existat vreodată.

405: „ Metoda nu este permisă" Generat atunci când serverul de găzduire (server sursă) acceptă metoda primită, dar lipsește resursa țintă.

406: „ Răspuns nepotrivit" Resursa solicitată este capabilă doar să genereze conținut care este inacceptabil conform antetelor Accept trimise în cerere.

408: „ Serverul a expirat, așteptând să sosească restul solicitării de la browser" Generat atunci când serverul întrerupe procesarea după expirarea unei cereri complete din browser. Cu alte cuvinte, serverul nu a primit cererea completă trimisă de browser. Un posibil motiv ar putea fi congestionarea rețelei care cauzează pierderi de pachete între browser și server.

410: „ Resursa solicitată lipsește și nu va fi returnată" Similar cu codul 404 Not Found, cu excepția faptului că codul de stare 410 indică faptul că această stare este așteptată în mod continuu.

429: Aceasta este o eroare http " Prea multe cereri" Generat de server atunci când utilizatorul a trimis prea multe solicitări într-o anumită perioadă de timp ( Limită de viteză). Uneori, eroarea poate fi cauzată de roboții care încearcă să acceseze site-ul. În acest caz, poate fi necesar să vă schimbați adresa URL de conectare a administratorului WordPress.

429 prea multe cereri

499: " Clientul a închis cererea" Returnat de NGINX atunci când clientul închide cererea în timp ce NGINX încă o procesează.

Coduri de stare500

500: „N iar serverul a întâmpinat o eroare și cererea nu a putut fi finalizată" Cod http generic, numit și „ Internal Server Error" Ceva a mers prost pe server și resursa solicitată nu a fost livrată. Acest cod este generat de pluginuri terțe atunci când codul PHP sau conexiunea la baza de date eșuează.


Eroare la stabilirea conexiunii la baza de date

501: „Neimplementat”. Această eroare indică faptul că serverul nu acceptă funcționalitatea necesară pentru a finaliza cererea. Eroarea este aproape întotdeauna legată de serverul în sine, iar pentru a o rezolva trebuie să contactați serviciul de asistență al furnizorului de găzduire.

502: Aceasta este o eroare http " Gateway nevalid" Indică faptul că un server a primit un răspuns incorect de la altul. Uneori, cererea durează prea mult și, prin urmare, este anulată sau abandonată de server și conexiunea la baza de date se pierde.

503: Aceasta este o eroare http " În prezent, serverul nu poate procesa cererea" Solicitarea nu poate fi procesată în acest moment. Acest cod este returnat de un server supraîncărcat care nu poate procesa cereri noi.

504: " Serverul care acționează ca gateway nu a putut aștepta un răspuns de la alt server" A revenit când două servere au fost implicate în procesarea unei cereri, iar primul server a expirat în așteptarea unui răspuns de la al doilea.

Mai multe informații despre codurile de stare HTTP

Lista de mai sus explică majoritatea codurilor de stare HTTP pe care le puteți întâlni. Iată resurse în care puteți afla mai multe despre codurile rare de stare HTTP care nu sunt acoperite în articolul nostru:

  • Lista completă a codurilor de stare HTTP- Wikipedia;
  • Definițiile codului de stareInternet Engineering Task Force (IETF);
  • RFC 7231.

Traducerea articolului „Un ghid complet și o listă de coduri de stare HTTP” a fost pregătit de echipa prietenoasă de proiect

HTTP (Hypertext Transfer Protocol) este un protocol folosit pentru schimbul de date între browser și serverul pe care se află site-ul. Browserul trimite o solicitare către server sub forma adresei paginii site-ului web ( URL), ca răspuns, serverul returnează un cod de răspuns. Și în funcție de acest cod, browserul întreprinde acțiuni suplimentare.

Există peste 50 de coduri de răspuns http în total. Cele mai populare coduri sunt 200, 301, 404.

Cum să aflați codul de răspuns HTTP

Pentru a afla exact ce răspunde serverul atunci când accesați adresa URL a unui site, puteți utiliza serviciul bertal.ru:

Introducând adresa completă a paginii site-ului, puteți vedea răspunsul complet http de la server. Este convenabil să specificați diverși roboți de căutare Yandex, Google sau pur și simplu să selectați „browserul meu”:

De exemplu, în cazul unei redirecționări 301, răspunsul va fi astfel:

Și în cazul în care pagina nu este găsită (cod 404):

Codurile de răspuns sunt împărțite în mai multe clase. Ele pot fi clasificate cu ușurință deoarece diferă în prima cifră. Tabelul general al codurilor de răspuns:

  • 1xx - informativ
  • 2xx - de succes (Succes)
  • 3xx - redirecționare
  • 4xx - Eroare client
  • 5xx - Eroare server

Să aruncăm o privire mai atentă la fiecare dintre codurile de răspuns.

Descrierea codurilor de răspuns HTTP

  • 100..199 - grup de cereri de informare. Pentru un webmaster, acest grup nu prezintă deloc interes.
  • 200 (OK) - totul a fost procesat cu succes, pagina a fost încărcată.
  • 201 (Creat) - a fost creată o nouă resursă.
  • 202 (Acceptat) - cererea este în curs de procesare.
  • 203 (Informații non-autoritare) - informațiile nu au fost descărcate din sursa principală.
  • 204 (Fără conținut) - serverul nu a returnat conținutul. Solicitarea este considerată procesată cu succes.
  • 206 (Conținut parțial) - nu tot conținutul a fost transferat utilizatorului.
  • 300 (Alegeri multiple) - opțiuni multiple și serverul nu a putut procesa corect cererea.
  • 301 (Mutat permanent) - redirecționare automată deoarece adresa paginii a fost mutată permanent la o altă adresă. Acest răspuns este folosit foarte des deoarece adresele paginilor se schimbă frecvent. Acest cod de răspuns este folosit și dacă adresa site-ului s-a schimbat.
  • 302 (Mutat temporar) - adresa a fost mutată temporar.
  • 303 (Vezi Altele) - adresa solicitată trebuie vizualizată la o altă adresă, care poate fi vizualizată prin GET.
  • 304 (Nemodificat) - pagina nu a fost modificată. Pentru accelerarea indexării roboții de căutare pot folosi acest răspuns.
  • 305 (Utilizați Proxy) - accesul la pagină este disponibil numai printr-un server Proxy.
  • 306 (Redirecționare temporară) - adresa a fost schimbată pentru o perioadă scurtă de timp.
  • 400 (Bad Request) - cerere nevalidă către server.
  • 401 (Neautorizat) - este necesară autorizarea utilizatorului
  • 403 (Interzis) - accesul este interzis tuturor.
  • 404 (Negăsit) - documentul nu a fost găsit. O greșeală comună. Citire: cum să faci corect o pagină de eroare 404
  • 405 (Metoda nu este permisă) - metoda nu este acceptată
  • 406 (Nu este acceptabil) - documentul există, dar în format greșit
  • 407 (Este necesară autentificarea proxy) - disponibil numai printr-un server proxy
  • 408 (Request Time-out) - conexiunea a fost întreruptă din cauza unui răspuns lung al serverului
  • 500 (Eroare internă a serverului) - eroare de server. Acest lucru se datorează adesea setărilor incorecte .htaccess
  • 501 (Neimplementat) - serverul nu poate efectua acțiunea solicitată de client
  • 502 (Bad Gateway) - serverul a primit răspunsuri incorecte de la un alt server
  • 503 (Serviciul indisponibil) - unele servicii de pe partea serverului sunt temporar indisponibile
  • 504 (Gateway Time-out) - serverul care acționează ca gateway sau server proxy nu a așteptat un răspuns
  • 505 (Versiunea HTTP nu este acceptată) - versiunea HTTP care este solicitată nu este acceptată.
  • Serghei Savenkov

    un fel de recenzie „scurtă”... de parcă s-ar grăbi undeva