Kod odpowiedzi HTTP

Kod odpowiedzi HTTP to numeryczna odpowiedź serwera na zapytanie aplikacji po stronie użytkownika.

Mówiąc najprościej: jest to trzycyfrowy kod, jaki serwer wysyła do naszej przeglądarki, który informuje o powodzeniu, przekierowaniu, problemie z naszym połączeniem.

Najważniejsze kody odpowiedzi serwera

W praktyce SEO najważniejszymi kodami odpowiedzi serwera są:

  • Kod 200 – informujący o powodzeniu (np. żądany adres URL istnieje i zostaje pobrany)
  • Błąd 404 – żądana zawartość nie istnieje bądź w adresie URL jest błąd
  • Przekierowanie 301 i Przekierowanie 302 – żądany adres URL został przeniesiony pod inny adres.

Jak znaleźć kod odpowiedzi serwera?

Kod odpowiedzi serwera można znaleźć na wiele sposobów. Jeśli chcemy sprawdzić kody odpowiedzi dla wielu stron, najprościej będzie skorzystać z jakiegokolwiek crawlera, np. Xenu lub Screaming Frog.

Najprostszy sposób dla pojedynczych stron to sprawdzenie bezpośrednio w przeglądarce.

Na przykładzie przeglądarki Chrome:

  • wciskamy F12
  • przechodzimy do zakładki Network
  • w oknie przeglądarki wpisujemy interesujący nas adres
  • kod odpowiedzi znajduje się w kolumnie Status
Interesuje nas pierwszy wiersz, bo dotyczy on naszego adresu. W kolejnych wierszach możemy sprawdzić, czy inne ładowane zasoby również mają kod odpowiedzi 200.

Jakie są rodzaje odpowiedzi serwera?

Kody odpowiedzi dzielą się na 5 grup, zależnie od pierwszej cyfry kodu:

  • 1xx – kody informacyjne
  • 2xx – kody informujące o powodzeniu
  • 3xx – przekierowania
  • 4xx – błędy aplikacji
  • 5xx – błędy serwera

Co oznaczają poszczególne kody odpowiedzi HTTP?

Kody HTTP 100 (informacje):

  • kod 100 Continue – kontynuuj
  • kod 101 Switching Protocols – inf0rmacja o zmianie protokołu
  • kod 110 Connection Timed Out – przekroczono czas połączenia
  • kod 111 Connection refused – połączenie odrzucone przez serwer

Kody HTTP 200 (kody powodzenia):

  • kod 200 OK – wszystko jest ok, serwer wysyła zawartość żądanego dokumentu
  • kod 201 Created – dokument został zapisany na serwerze
  • kod 202 Accepted – zapytanie zostało przyjęte i czeka na realizację
  • kod 203 Non-Authoritative Information – informacja nieautorytatywna
  • kod 205 Reset Content – serwer zrealizował zapytanie, przywróć pierwotną zawartość dokumentu
  • kod 206 Partial Content – serwer zwrócił tylko część zapytania GET

Kody HTTP 300 (przekierowania):

  • kod 300 Multiple Choices – możliwe kilka przekierowań – serwer poda adres pod którym można dokonać wyboru
  • przekierowanie 301 Moved Pernamently – adres URL został przeniesiony na stałe
  • przekierowanie 302 Found – przekierowanie tymczasowe
  • przekierowanie 303 See Other – przekierowanie dla zapytań metodą POST
  • kod 304 Not Modified – dokument nie zmienił się wg warunków klienta – np. w przypadku korzystania z cache przeglądarki
  • kod 305 Use Proxy – użyj proxt podanego w nagłówku location
  • kod 306 Switch Proxy – kod nie jest w użyciu
  • kod 307 Temporary Redirect – tymczasowe przekierowanie podobne do 302, ale bez zmiany metody (np. z POST na GET – więcej info)
  • błąd 310 Too many redirects – pętla przekierowań

Kody HTTP 400 (błędy aplikacji):

  • błąd 400 Bad Request – błąd w zapytaniu (np. w składni)
  • błąd 401 Unauthorized – dostęp wymaga uwierzytelnienia
  • błąd 402 Payment Required – wymagana opłata (np. w wypadku płatnych API)
  • błąd 403 Forbidden – zapytanie zostało przyjęte, jednak nie może być zrealizowane ze względu konfiguracji bezpieczeństwa
  • błąd 404 Not Found – nie znaleziono żądanego zasobu, brak informacji o jego nowym adresie lub istnieniu w przeszłości
  • błąd 405 Method Not Allowed – metoda zawarta w żądaniu nie jest dozwolona – lista dozwolonych metod zawarta jest w odpowiedzi
  • błąd 406 Not Acceptable – serwer nie jest w stanie zwrócić odpowiedzi wg warunków podanych w zapytaniu
  • błąd 407 Proxy Authentication Required – odpowiednik błędu 401 dla serwerów proxy
  • błąd 408 Request Timeout – klient nie przesłał zapytania na czas
  • błąd 409 Conflict – żadanie nie będzie zrealizowane na skutek konfliktu z obecnym statusem zasobu (np. wysłanie 2 razy takiego samego dokumentu przy wymaganej unikalności)
  • błąd 410 Gone – dany zasób zniknął i nie należy się już do niego odwoływać. Działa podobnie jak kod 404, wg oficjalnego stanowiska Google może pomóc nieco szybciej niż 404 usuwać z indeksu usunięte adresy URL
  • błąd 411 Length required – odmowa realizacji zapytania ze względu na brak nagłówka Content-Lenght
  • błąd 412 Precondition Failed – co najmniej jeden warunek wstępny w zapytaniu nie może być spełniony
  • błąd 413 Request Entity Too Large – zapytanie jest zbyt długie
  • błąd 414 Request-URI Too Long – adres URL zapytania jest zbyt długi
  • błąd 415 Unsupported Media Type – składnia zapytania jest dla serwera niezrozumiała
  • błąd 416 Requested Range Not Satisfiable – serwer nie może obsłużyć podanego zakresu bajtowego
  • błąd 417 Expectation Failed – oczekiwana wartość jest nie do zwrócenia
  • błąd 418 I’m a teapot – easter egg, obecnie nie implementowany
  • błąd 451 Unavailable For Legal Reasons – kod inspirowany tytułem powieści „451 stopni Fahrenheita” – zasób zablokowany ze względów prawnych lub przez cenzurę

Kody HTTP 500 (błędy serwera):

  • błąd 500 Internal Server Error – wewnętrzny błąd serwera
  • błąd 501 Not Implemented – serwer nie ma funkcjonalności wymaganej w zapytaniu
  • błąd 502 Bad Gateway – serwer pośredniczący otrzymał od nadrzędnego błędną odpowiedź i nie jest w stanie obsłużyć klienta
  • błąd 503 Service Unavailable – przeciążenie serwera, usługa niedostępna
  • błąd 504 Gateway Timeout – serwer pośredniczący nie otrzymał na czas odpowiedzi, także np. w przypadku gdy nie odpowiada serwer DNS
  • błąd 505 HTTP Version Not Supported – nieobsługiwana wersja HTTP
  • błąd 506 Variant Also Negotiates
  • błąd 507 Insufficient Storage (WebDAV)
  • błąd 508 Loop Detected (WebDAV)
  • błąd 509 Bandwidth Limit Exceeded – serwer przekroczył limit transferu danych
  • błąd 510 Not Extended – brak rozszerzenia HTTP wymaganego w zapytaniu
  • błąd 511 Network Authentication Required – uwierzytelnianie potrzebne przed uzyskaniem dostępu do sieci

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *