Kody odpowiedzi HTTP
Odkryj tajniki kodów odpowiedzi HTTP, od 100 do 500, w naszym przewodniku pełnym praktycznych wyjaśnień dla deweloperów i webmasterów.
Zastanawiasz się, co naprawdę oznaczają kody odpowiedzi HTTP, gdy przeglądasz internet? Nasz najnowszy artykuł przedstawia szczegółową listę i wyjaśnienia każdego kodu, od popularnego 404 po rzadziej spotykane, jak 503. Idealny przewodnik dla deweloperów, administratorów stron i każdego, kto chce lepiej zrozumieć, jak działa Internet.
Kody 1xx, czyli kody informacyjne
- 100 - Continue - jest to prośba serwera o dalsze wysyłanie zapytania
- 101 - Switching Protocols - jest to komunikat o zmianie protokołu
- 110 - Connection Timed Out - oznacza przekroczenie maksymalnego czasu połączenia
- 111 - Connection Refused - mówi o tym, że połączenie zostało odrzucone przez serwer
Kody 2xx, czyli kody oznaczające powodzenie
- 200 - OK - zawartość żądanego dokumentu
- 201 - Created - dokument, który był przesyłany został zapisany na serwerze
- 202 - Accepted - oznacza przyjecie zapytania, jednak jest ono jeszcze realizowane
- 203 - Non Authoritative Information - zwrócona informacja nie odpowiada w 100% odpowiedzi pierwotnego serwera, ale została utworzona z lokalnych lub zewnętrznych kopii
- 204 - No Content - zapytanie zostało pomyślnie zrealizowane i nie ma potrzeby zwracania żadnej treści
- 205 - Reset Content - zapytanie zostało zrealizowane pomyślnie i treść powinna zostać przywrócona przez klienta
- 206 - Partial Content - serwer zrealizował tylko część zapytania typu GET, odpowiedź musi zawierać nagłówek Range informujący o zakresie bajtowym zwróconego elementu
Kody 3xx, czyli kody przekierowań
- 300 - Multiple Choices - oznacza, że istnieje więcej niż jeden sposób obsłużenia danego zapytania
- 301 - Moved Permanently - żądany zasób zmienił swój URI i w przyszłości zasób powinien być szukany pod wskazanym nowym adresem. Jest to tak zwane stałe przekierowanie, bardzo ważne z punktu widzenia SEO
- 302 - Found - oznacza, że żądany zasób jest dostępny (chwilowo) pod innym adresem, ale w przyszłości będzie dostępny pod starym adresem
- 303 - See Other - to odpowiedź na żądanie, które znajduje się pod innym adresem URI
- 304 - Not Modified - zawartość zasobu nie podległa zmianie według warunku przekazanego przez klienta (np. data ostatniej wersji zasobu pobranej przez klienta - cache przeglądarki)
- 305 - Use Proxy - aby odwołać się do żądanego zasobu, należy skorzystać z serwera proxy
- 307 - Temporary Redirect - przekierowanie tymczasowe
- 310 -Too many - komunikat informuje o zbyt dużej liczbie przekierowań
Kody 4xx, czyli kody błędu aplikacji
- 400 - Bad Request - nie można obsłużyć zapytania z powodu błędnej składni
- 401 - Unauthorized - żądanie dostępu do zasobu, który to dostęp wymaga autoryzacji
- 403 - Forbidden - serwer nie może zwrócić odpowiedzi z powodu zabezpieczeń
- 404 - Not Found - zasób nie został odnaleziony według podanego adresu URL
- 405 - Method Not Allowe - metoda, która została zawarta w żądaniu jest nie dozwolona dla wskazanego zasobu, w odpowiedzi przedstawione są dozwolone metody
- 406 - Not Acceptable - zażądany zasób nie jest w stanie zwrócić odpowiedzi mogącej być obsłużonej przez klienta według informacji podanych w zapytaniu
- 407 - Proxy Authentication Required - odpowiedź analogiczna do kodu 401, dotyczy serwera proxy
- 408 -Request Timeout - zapytanie nie zostało przesłane przez klienta w określonym czasie
- 409 - Conflict - komunikat ten oznacza, że żądanie nie może być zrealizowane, ponieważ występuje konflikt z obecnym statusem zasobu, ten kod odpowiedzi jest zwracany tylko w przypadku podejrzewania przez serwer, że klient może nie znaleźć przyczyny błędu i przesłać prawidłowego zapytania
- 410 - Gone - żądany zasób został usunięty
- 411 - Length required - serwer odmawia zrealizowania zapytania ze względu na brak nagłówka Content-Length w zapytaniu
- 412 - Precondition Failed - oznacza, że co najmniej jeden warunek ujęty w zapytaniu nie może być spełniony przez serwer
- 413 - Request Entity Too Large - zbyt długie zapytanie dla serwera
- 414 - Request-URI Too Long adres URI - długość zażądanego URI jest większa niż maksymalna oczekiwana przez serwer
- 415 - Unsupported Media Type - serwer nie przyjmuje żądania, ponieważ jego składnia jest dla niego nieznana
- 416 - Requested Range Not Satisfiable - klient podał w zapytaniu zakres, który nie może być zastosowany do wskazanego zasobu
- 417 - Expectation Failed - oczekiwanie podane w nagłówku Expect żądania nie może być spełnione przez serwer lub – jeśli zapytanie realizuje serwer proxy – serwer ma dowód, że oczekiwanie nie będzie spełnione przez następny w łańcuchu serwer realizujący zapytanie
- 418 - „Jestem czajnikiem” – tzw. easter egg. Zdefiniowany w 1998. Obecnie nie jest implementowany do serwerów HTTP, ale znane są takie przypadki.
- 422 - Unprocessable entity - Zapytanie było poprawnie sformułowane, ale było niemożliwe do kontynuowania z powodu semantycznych błędów.
- 451 - Unavailable For Legal Reasons - Zawartość niedostępna z powodów prawnych – strona lub zasób zostały zablokowane z powodów naruszenia prawa, w tym także z powodu ocenzurowania zawartości przez władze. Wartość kodu jest nawiązaniem do powieści „451 stopni Fahrenheita”.
Kody 5xx, czyli kody błędu serwera
- 500 - Internal Server Error - wewnętrzny błąd serwera
- 501 - Not Implemented - serwer nie może obsłużyć danego zapytania
- 502 - Bad Gateway - serwer pośredniczący nie może zrealizować zapytania klienta
- 503 - Service Unavailable - oznacza, że zapytanie nie może być obecnie zrealizowane z powodu przeciążenia serwera
- 504 - Gateway Timeout - spełniający rolę bramy lub pośrednika – nie otrzymał w ustalonym czasie odpowiedzi od wskazanego serwera HTTP, FTP, LDAP itp. lub serwer DNS jest potrzebny do obsłużenia zapytania
- 505 - HTTP Version Not Supported - oznacza, że dana wersja PHP nie jest obsługiwana przez serwer
- 507 - Insufficient Storage (WebDAV) - Serwer nie jest w stanie zapisać danych związanych z wykonaniem zapytania
- 508 - Loop Detected (WebDAV) - Serwer wykrył nieskończoną pętlę w trakcie przetwarzania zapytania
- 509 - Bandwidth Limit Exceeded - Serwer jest tymczasowo niedostępny, ponieważ właściciel strony przekroczył limit transferu danych.
- 510 - Not Extended - Brak rozszerzenia HTTP koniecznego do obsługi danego zapytania
- 511 - Network Authentication Required - Wymagane uwierzytelnienie przed otrzymaniem dostępu do sieci. W zamyśle wykorzystywane przez pośredników kontrolujących dostęp do sieci (np.: wymaganie potwierdzenia zasad użytkowania przed udostępnieniem połączenia).