Przejdź do

Popularne kody odpowiedzi HTTP

Strona główna > Czytelnia > SEO > Popularne kody odpowiedzi HTTP

Użytkownik próbujący przejść na daną stronę internetową, nie zawsze zobaczy tę zawartość, której oczekuje. Łącznie możemy natrafić na ponad 40 różnych kodów odpowiedzi HTTP – ich poszczególne typy różnią się strukturą liczbową, po której możemy poznać, jaki charakter ma odpowiedź wskazanego serwera HTTP. Każdy z nich komunikuje nam określone przyczyny błędu. Z tego tekstu dowiesz się, co oznaczają określone kody odpowiedzi HTTP.

Co to jest kod odpowiedzi HTTP?

Kod statusu HTTP to odpowiedź serwera na żądanie przeglądarki. Kiedy użytkownik wchodzi na stronę internetową, przeglądarka wysyła żądanie do serwera witryny, a serwer odpowiada na jej żądanie trzycyfrowym kodem, nazywanym kodem statusu HTTP. Można to porównać do rozmowy telefonicznej między przeglądarką a serwerem, które ustalają między sobą, czy na linii nie ma żadnych zakłóceń. Jeżeli serwer napotkał niespodziewane trudności, przeglądarka powinna poinformować o tym fakcie użytkownika.

Poprawnie zastosowane kody błędów żądanego zasobu pozwolą Ci szybko zdiagnozować problemy witryny, aby zminimalizować przestoje w serwisie. Możesz nawet celowo użyć niektórych z nich, aby pomóc botom wyszukiwarek i użytkownikom uzyskać dostęp do Twojej witryny, na przykład przekierowanie 301 poinformuje, że strona została trwale przeniesiona w inne miejsce.

Klasyfikacja kodów odpowiedzi HTTP

Kody odpowiedzi HTTP mają pięć kategorii w oparciu o reakcje serwera wysyłane do przeglądarki. Każdy z nich składa się z trzech cyfr odpowiadających różnym kategoriom odpowiedzi.

Statusy odpowiedzi HTTP:

  • 1xx – kody informacyjne
  • 2xx – kody powodzenia
  • 3xx – kody przekierowania
  • 4xx – kody błędu aplikacji klienta
  • 5xx – kody błędu serwerów HTTP

HTTP 1XX – informacyjne

Ta klasa wskazuje, że serwer otrzymał żądanie HTTP wysłane przez przeglądarkę i będzie kontynuował proces. Jest to tymczasowa odpowiedź, więc użytkownik nie napotka tego kodu w przeglądarce.

  • 100 Kontynuuj (Continue) – serwer otrzymał początkową część żądania i oczekuje na resztę.
  • 101 Przełącz protokoły (Switching Protocols) – serwer zaakceptował prośbę klienta o zmianę protokołu.
  • 102 Przetwarzanie (Processing) – serwer przetwarza żądanie, ale nie ma jeszcze gotowej odpowiedzi.
  • 103 Czasowo niedostępne (Early Hints) – kody odpowiedzi HTTP, które pozwalają serwerowi przesłać część odpowiedzi przed zakończeniem przetwarzania głównego żądania.

HTTP 2XX – serwer zrealizował zapytanie klienta

W ramach tej odpowiedzi HTTP dostajemy informację zwrotną, że serwer zrozumiał zapytanie i je przetworzył oraz żądanie zostało zaakceptowane. Następuje obsłużenie danego zapytania klienta.

  • 200 OK (OK) – zapytanie zostało przyjęte. Najczęściej zwracany nagłówek odpowiedzi, informuje o tym, że doszło do obsłużenia danego zapytania oraz wyświetlenia żądanego zasobu.
  • 201 Utworzono (Created) – serwer zrealizował zapytanie. Żądanie zasobu zakończyło się sukcesem i jest zgodne z jego obecnym statusem.
  • 202 Zaakceptowano (Accepted) – żądanie zaakceptowano do przetworzenia w ustalonym czasie odpowiedzi, ale nie zostało jeszcze wykonane.
  • 203 Nieautorytatywne informacje (Non-Authoritative Information) – żądanie zakończyło się sukcesem, ale żądany zasób pochodzi z innego źródła niż oryginalny serwer, dodatkowo zasób został utworzony z lokalnych lub zewnętrznych kopii.
  • 204 Bez treści (No Content) – żądanie zostało wykonane, ale brakuje treści do zwrócenia w odpowiedzi.
  • 205 Zresetowano zawartość (Reset Content) – kody błędów HTTP, które mówią, że serwer prawidłowo przetworzył żądanie, ale klient powinien zresetować formularze lub interfejsy, które wygenerowały zapytanie. Klient powinien przywrócić pierwotny wygląd dokumentu.
  • 206 Częściowa zawartość (Partial Content) – po stronie serwera dostarczana jest tylko część zasobu, np. w wyniku żądania z nagłówkiem Range.
  • 207 Multi-Status (Multi-Status) – pozwala zwrócić wieloczęściowe odpowiedzi, w ramach których różne operacje mogą generować różne wyniki.
  • 208 Już raportowano (Already Reported) – wskazuje, że elementy były wcześniej raportowane w poprzednich częściach odpowiedzi.

HTTP 3XX – kody przekierowania

Kody przekierowań wyświetlane są wtedy, kiedy serwer otrzymał żądanie, ale żądany zasób został przeniesiony w inne miejsce, więc klient powinien zostać przekierowany.

  • 300 Wiele wyborów (Multiple Choices) – zazwyczaj pojawia się, kiedy istnieje kilka sposobów obsługi wskazanej aktywności za pośrednictwem serwera nadrzędnego i nie ma pewności, jaką opcję powinien wybrać klient. Serwer może wówczas podać adres zasobu, który pozwala wybrać jednoznaczne zapytanie.
  • 301 Stałe przekierowanie (Moved Permanently) – żądany zasób został na stałe przeniesiony pod inny adres strony internetowej.
  • 302 Tymczasowe przekierowanie (Found, Moved Temporarily, Redirect) – żądany zasób znajduje się tymczasowo pod innym adresem.
  • 303 Zobacz inne (See Other) – właściwy sposób przekierowywania zazwyczaj generowany przez żądanie metodą Post, gdy zasób nie jest bezpośrednio dostępny, ale klient powinien wykonać część zapytania typu Get do innego zasobu w celu uzyskania właściwej odpowiedzi.
  • 304 Nie zmieniono (Not Modified) – istnienie takiego zasobu nie uległo zmianie od momentu ostatniego żądania.
  • 305 Użyj serwera proxy (Use Proxy) – oznacza, że zapytanie realizuje serwer proxy podany w nagłówku.
  • 307 Tymczasowe przekierowanie (Temporary Redirect) – odpowiedź powinna zawierać zmieniony adres zasobu, na który klient zobowiązany jest się przenieść.

HTTP 4XX – błąd klienta, serwer odmawia zrealizowania zapytania

Serwer nie może ukończyć żądania klienta, który przesłał zapytania, z powodu błędu po jego stronie, takiego jak: niedostępna strona, błędna składnia zapytania lub problem z autoryzacją. Odpowiedź wyjaśni, czy jest to problem tymczasowy czy stały. W takiej sytuacji spróbuj przesłać ponownie prawidłowe zapytanie.

  • 400 Nieprawidłowe żądanie (Bad Request) – kod odpowiedzi 400 zostaje zwrócony, kiedy klient źle sformułuje żądanie, np. będzie ono mieć nieprawidłową składnię, niezgodne parametry lub błędne dane.
  • 401 Nieautoryzowany (Unauthorized) – klient nie dostarczył poprawnych danych uwierzytelniających lub są one nieprawidłowe.
  • 402 Wymagana płatność (Payment Required) – może być używany tam, gdzie dostęp do zasobu wymaga opłaty. Z kodu korzysta m.in. Google Developers API i wskazuje, że został przekroczony dzienny limit zapytań.
  • 403 Zabronione (Forbidden) – klient nie ma odpowiednich uprawnień, mimo że poprawnie się zalogował. Oznacza to, że pytanie zostało zrozumiane, ale konfiguracja bezpieczeństwa zabrania serwerowi zwrócić dany zasób.
  • 404 Nie znaleziono (Not Found) – nie znaleziono wskazanego zasobu.
  • 405 Metoda niedozwolona (Method Not Allowed) – strona działa poprawnie, ale klient używa niewłaściwej metody HTTP dla danego zasobu.
  • 406 Nieakceptowalne (Not Acceptable) – zażądany zasób nie jest w stanie zwrócić odpowiedzi, mogącej zostać obsłużonej przez klienta.
  • 407 Wymagana autoryzacja proxy (Proxy Authentication Required) – wskazuje na konieczność uwierzytelnienia do serwera pośredniczącego, dotyczy dostępu do proxy.
  • 408 Przekroczono czas żądania (Request Timeout) – serwer nie otrzymał pełnego żądania od klienta w określonym czasie, co skutkuje jego zakończeniem.
  • 409 Konflikt (Conflict) – żądanie nie może być zrealizowane, ponieważ występuje konflikt z obecnym statusem zasobu. Kod 409 zostaje zwracany tylko w przypadku podejrzewania przez serwer, że klient jest w stanie znaleźć przyczyny błędu i przesłać ponownie prawidłowe zapytanie.
  • 412 Niespełnione warunki wstępne (Precondition Failed) – serwer nie może spełnić przynajmniej jednego z warunków wstępnych zawartych w zapytaniu.
  • 413 Zbyt długie zapytanie (Request Entity Too Large) – encja zapytania jest zbyt długa.
  • 417 Oczekiwanie niespełnione (Expectation Failed) – oczekiwanie podane w żądaniu nie może zostać spełnione przez serwer.
  • 431 (Request Header Fields Too Large) – serwer odmawia wykonania żądania ze względu na zbyt duże pole w nagłówku.

HTTP 5XX – kody błędu serwera

W wyniku błędów serwera, wyświetlają się kody z cyfrą numer 5. Odpowiedź serwera opisze sytuację i określi, czy jest to problem tymczasowy czy stały.

  • 500 Wewnętrzny błąd serwera (Internal Server Error) – kody błędu serwera HTTP, który napotkał błąd wewnętrzny i nie może przetworzyć zapytania.
  • 501 Niezaimplementowane (Not Implemented) – serwer nie obsługuje metody żądania lub funkcji, która została użyta.
  • 502 Błędna brama (Bad Gateway) – serwer proxy nie otrzymuje poprawnej odpowiedzi od serwera pośredniego.
  • 503 Usługa niedostępna (Service Unavailable) – serwer jest tymczasowo przeciążony lub wyłączony z powodu prac konserwacyjnych.
  • 504 Przekroczenie czasu bramy (Gateway Timeout) – brama nie może uzyskać odpowiedzi od serwera w odpowiednim czasie.
  • 505 Nieobsługiwana wersja HTTP (HTTP Version Not Supported) – serwer nie wspiera wersji HTTP używanej przez klienta.
  • 511 Wymagana autoryzacja sieciowa (Network Authentication Required) – konieczne uwierzytelnianie przed otrzymaniem dostępu do sieci. Zazwyczaj jako wymaganie potwierdzenia zasad użytkowania przed udostępnieniem połączenia np. logowania do sieci publicznej.

Kreatywne pomysły na błędy HTTP

Nawet jeżeli Twoja strona nie może wyświetlić wskazanego zasobu, nie oznacza to, że użytkownik od razu opuści witrynę. Pamiętaj, że zawsze warto zaskakiwać Twoich klientów! Poniżej znajdziesz kreatywne przykłady różnych serwisów, które wyświetlają się w ramach przeglądarki internetowej, kiedy ktoś wpisze niepoprawny adres.

Błąd 404 na stronie www.aniastarmach.plStrona błędu w serwisie Nowy MarketingError 404 na stronie Cena Biznesu

 

Błąd 404 strony internetowej Zalando.pl

Podsumowanie – serwer odmawia przyjęcia zapytania

Jeżeli serwer odmawia przyjęcia zapytania, koniecznie sprawdź, gdzie występuje problem, który uniemożliwia serwerowi przetworzenie żądania. Powyższe popularne kody odpowiedzi HTTP mogą naprowadzić Cię na właściwy trop i pomóc rozwiązać przyczynę.

 

Dawid Rabczuk

Dawid Rabczuk

SEO Specialist

W Fabryce Marketingu pracuje na stanowisku SEO Specialist. Specjalizuje się w technicznej analizie i optymalizacji serwisów oraz w tworzeniu audytów SEO i audytów UX.


    Zapisz się do newslettera

    Pozostałe najnowsze artykuły

    Google wycofuje ulepszone CPC (eCPC) z reklam – jakie są alternatywy?

    Google wycofuje się z ulepszonego kosztu za kliknięcie (eCPC) w kampaniach w sieci wyszukiwania oraz sieci reklamowej. Od października...

    Jak wybrać cel reklamowy i jaki ma on wpływ na efekty kampanii na Facebooku?

    Zastanawiałeś się kiedyś, jak ustawić kampanię na Facebooku, aby realizowała wybrane przez Ciebie cele kampanii reklamowej? System reklamowy...

    Marketing terytorialny – czym jest, przykłady

    Marketing terytorialny może pomóc wypromować obszary terytorialne i przedstawić korzyści dla dowolnych grup społecznych. Głównym celem tego...

    Newsletter – co to jest i jak tworzyć skuteczne wiadomości?

    Regularne wysyłanie newslettera ma wpływ na budowanie relacji i może przyczynić się do zwiększania sprzedaży w Twojej firmie....