Kody statusu HTTP - ściąga (Cheat Sheet)
Odpowiedzi informacyjne
| Kod statusu | Fraza opisująca | Znaczenie | Wersja HTTP |
|---|---|---|---|
| 100 | Continue | Klient powinien kontynuować wysyłanie żądania. Ta tymczasowa odpowiedź służy do powiadomienia klienta, że część jego żądania została odebrana przez serwer i nie została jeszcze odrzucona. Klient powinien kontynuować wysyłanie pozostałej części żądania lub, jeśli żądanie jest już kompletne, zignorować tę odpowiedź. Serwer musi wysłać ostateczną odpowiedź po zakończeniu żądania. | Dostępne od HTTP/1.1 |
| 101 | Switching Protocols | Serwer zrozumiał żądanie klienta i powiadomi go za pomocą nagłówka Upgrade o zmianie protokołu w celu zakończenia żądania. Po wysłaniu ostatniej pustej linii tej odpowiedzi serwer przełączy się na protokoły zdefiniowane w nagłówku Upgrade. Działanie to powinno być podejmowane tylko wtedy, gdy zmiana na nowy protokół jest korzystniejsza. Na przykład zmiana na nową wersję HTTP jest korzystniejsza niż starsza wersja lub zmiana na protokół czasu rzeczywistego, synchroniczny w celu dostarczenia zasobów wykorzystujących takie funkcje. | Dostępne od HTTP/1.1 |
Odpowiedzi sukcesu
| Kod statusu | Fraza opisująca | Znaczenie | Wersja HTTP |
|---|---|---|---|
| 200 | OK | Żądanie powiodło się. Znaczenie sukcesu zależy od metody użytej w żądaniu.- GET: Zasób został pobrany i zwrócony klientowi jako treść odpowiedzi.- HEAD: Nagłówek encji został zwrócony klientowi jako nagłówek odpowiedzi.- POST: Po przetworzeniu przez serwer danych wysłanych przez klienta, odpowiedni zasób jest zwracany klientowi jako treść odpowiedzi.- TRACE: Komunikat żądania odebrany przez serwer jest zwracany klientowi jako treść odpowiedzi. | Dostępne od HTTP/0.9 |
| 201 | Created | Żądanie powiodło się i w oparciu o jego potrzeby utworzono nowy zasób. Jest to zazwyczaj kod odpowiedzi uzyskiwany metodą PUT. | Dostępne od HTTP/0.9 |
| 202 | Accepted | Serwer zaakceptował żądanie, ale jeszcze go nie przetworzył. Podobnie jak może zostać odrzucone, żądanie może, ale nie musi zostać ostatecznie wykonane. W operacjach asynchronicznych nie ma wygodniejszego sposobu niż wysłanie tego kodu statusu. Celem zwrócenia odpowiedzi z kodem statusu 202 jest umożliwienie serwerowi przyjmowania żądań dotyczących innych procesów (np. operacji wsadowej, która jest uruchamiana tylko raz dziennie) bez konieczności utrzymywania połączenia z klientem do czasu zakończenia operacji wsadowej. Odpowiedź zwracająca kod statusu 202 powinna zawierać w encji informacje wskazujące na bieżący stan przetwarzania oraz wskaźnik do monitora stanu przetwarzania lub prognozy stanu, tak aby użytkownik mógł oszacować, czy operacja została zakończona. | Dostępne od HTTP/0.9 |
| 203 | Non-Authoritative Information | Serwer pomyślnie przetworzył żądanie, ale zwrócone metainformacje nagłówka encji nie są wiarygodnym zestawem aktualnym na serwerze źródłowym, lecz pochodzą z kopii lokalnej lub innej firmy. W przeciwnym razie najbardziej odpowiednie jest użycie kodu statusu 200. | HTTP/0.9 i 1.1 |
| 204 | No Content | Brak treści odpowiedzi, dostępne są tylko nagłówki odpowiedzi. Nagłówki odpowiedzi również mogą być przydatne. Agenty użytkownika mogą aktualizować dane w pamięci podręcznej dla odpowiednich zasobów na podstawie nowych nagłówków odpowiedzi. | Dostępne od HTTP/0.9 |
| 205 | Reset Content | Nakazuje agentowi użytkownika zresetowanie widoku dokumentu okna, które wysłało żądanie. | Dostępne od HTTP/1.1 |
| 206 | Partial Content | Ten kod statusu jest używany, gdy klient pobiera pliki w częściach przy użyciu nagłówka range. | Dostępne od HTTP/1.1 |
Komunikaty przekierowania
| Kod statusu | Fraza opisująca | Znaczenie | Wersja HTTP |
|---|---|---|---|
| 300 | Multiple Choice | Istnieje wiele możliwych odpowiedzi na żądanie, a agent użytkownika lub użytkownik musi wybrać jedną z nich. Serwer nie posiada żadnych standardów, którymi mógłby się kierować przy dokonywaniu wyboru za użytkownika. | HTTP/1.0 i nowsze |
| 301 | Moved Permanently | Ten kod statusu wskazuje, że ścieżka żądanego zasobu URI uległa zmianie, a nowy adres URL znajdzie się w polu nagłówka Location odpowiedzi. |
Dostępne od HTTP/0.9 |
| 302 | Found | Ten kod statusu wskazuje, że ścieżka żądanego zasobu URI zmieniła się tymczasowo i zmiana ta może nadal trwać. Dlatego klient powinien nadal używać tego identyfikatora URI przy przyszłych próbach dostępu. Nowy adres URL znajdzie się w polu nagłówka Location: odpowiedzi. |
Dostępne od HTTP/0.9 |
| 303 | See Other | Serwer wysyła tę odpowiedź, aby skierować klienta do użycia metody GET w celu uzyskania dostępu do innego identyfikatora URI. | HTTP/0.9 i 1.1 |
| 304 | Not Modified | Informuje klienta, że żądana treść nie zmieniła się od czasu ostatniego dostępu. Klient może pobrać zasób bezpośrednio z pamięci podręcznej przeglądarki. | Dostępne od HTTP/0.9 |
| 305 | Use Proxy | Żądany zasób musi być dostępny za pośrednictwem serwera proxy. Ze względów bezpieczeństwa ten kod statusu nie jest powszechnie obsługiwany. | Dostępne od HTTP/1.1 |
| 306 | unused | Ten kod statusu nie jest już używany; pierwotnie był używany w starszych wersjach specyfikacji HTTP 1.1. | Dostępne od HTTP/1.1 |
| 307 | Temporary Redirect | Serwer wysyła tę odpowiedź, aby skierować klienta do użycia tej samej metody w celu uzyskania dostępu do innego identyfikatora URI w celu pobrania żądanego zasobu. Nowy adres URL znajdzie się w polu nagłówka Location: odpowiedzi. Ma taką samą semantykę jak kod statusu 302 i ta sama metoda (GET, POST) musi zostać użyta dla obu dostępów. |
Dostępne od HTTP/1.1 |
| 308 | Permanent Redirect | Żądany zasób będzie na stałe znajdował się pod innym identyfikatorem URI. Nowy adres URL znajdzie się w polu nagłówka Location: odpowiedzi. Ma taką samą semantykę jak kod statusu 301 i ta sama metoda (GET, POST) musi zostać użyta dla obu dostępów. |
HTTPbis (Projekt eksperymentalny) |
Odpowiedzi błędów klienta
| Kod statusu | Fraza opisująca | Znaczenie | Wersja HTTP |
|---|---|---|---|
| 400 | Bad Request | Serwer nie może normalnie odczytać żądania z powodu błędu składniowego w wysłanym żądaniu. | Dostępne od HTTP/0.9 |
| 401 | Unauthorized | Do pobrania żądanej treści wymagane jest uwierzytelnienie, podobnie jak w przypadku błędu 403. Różnica polega na tym, że po błędzie 401 uwierzytelnienie może zostać pomyślnie zakończone, o ile zostaną wprowadzone poprawne dane konta i hasło. | Dostępne od HTTP/0.9 |
| 402 | Payment Required | Ten kod statusu jest zarezerwowany do wykorzystania w przyszłości. Pierwotnym celem stworzenia tego kodu były cyfrowe systemy płatności; jednak do tej pory nie został on wprowadzony do użytku. | HTTP/0.9 i 1.1 |
| 403 | Forbidden | Klient nie ma prawa dostępu do żądanej treści, a serwer odmawia wykonania żądania. | Dostępne od HTTP/0.9 |
| 404 | Not Found | Serwer nie może znaleźć żądanego zasobu. Ponieważ zdarza się to często, ten kod statusu jest bardzo powszechny podczas przeglądowania stron internetowych. | Dostępne od HTTP/0.9 |
| 405 | Method Not Allowed | Metoda użyta w żądaniu jest zabroniona przez serwer. Dokument RFC2616 zastrzega, że nie można zabronić metod GET i HEAD. |
Dostępne od HTTP/1.1 |
| 406 | Not Acceptable | Po przeprowadzeniu negocjacji treści przez serwer nie znaleziono odpowiedniej zawartości do przesłania klientowi. | Dostępne od HTTP/1.1 |
| 407 | Proxy Authentication Required | Podobny do kodu statusu 401, ale uwierzytelnienie wymagane jest za pośrednictwem serwera proxy. | Dostępne od HTTP/1.1 |
| 408 | Request Timeout | Klient nie zakończył wysyłania żądania w czasie, w którym serwer był przygotowany na oczekiwanie. Oznacza to, że serwer przerwie połączenie z klientem. Ta odpowiedź występuje częściej w innych przeglądarkach, takich jak Chrome i IE9, w celu przyspieszenia przeglądania za pomocą mechanizmu wstępnego łączenia HTTP. Należy również pamiętać, że niektóre serwery przerywają połączenie bezpośrednio, bez wysyłania takiej odpowiedzi. | Dostępne od HTTP/1.1 |
| 409 | Conflict | To żądanie jest sprzeczne z obecnym stanem serwera. | Dostępne od HTTP/1.1 |
| 410 | Gone | Żądany zasób został usunięty. | Dostępne od HTTP/1.1 |
| 411 | Length Required | Serwer odmawia wykonania żądania, ponieważ wymaga on pola nagłówka Content-Length, którego klient nie wysłał. |
Dostępne od HTTP/1.1 |
| 412 | Precondition Failed | Serwer nie spełnił warunków wstępnych określonych przez klienta w polach nagłówka żądania podczas próby pobrania zasobu. | Dostępne od HTTP/1.1 |
| 413 | Request Entity Too Large | Rozmiar encji żądania przekracza maksymalny limit ustawiony przez serwer; serwer może zamknąć połączenie HTTP i zwrócić nagłówek Retry-After. |
Dostępne od HTTP/1.1 |
| 414 | Request-URI Too Long | Adres URI zawarty w żądaniu klienta jest zbyt długi, aby serwer mógł go przetworzyć. | Dostępne od HTTP/1.1 |
| 415 | Unsupported Media Type | Serwer nie obsługuje typu mediów żądanego przez klienta i dlatego odmawia wykonania żądania. | Dostępne od HTTP/1.1 |
| 416 | Requested Range Not Satisfiable | Nagłówek Range zawarty w żądaniu nie może zostać spełniony, najczęściej dlatego, że zakres liczb w nagłówku Range wykracza poza rozmiar żądanego zasobu. |
Dostępne od HTTP/1.1 |
| 417 | Expectation Failed | Oczekiwana treść określona w nagłówku żądania Expect nie może zostać dostarczona przez serwer. |
Dostępne od HTTP/1.1 |
Odpowiedzi błędów serwera
| Kod statusu | Fraza opisująca | Znaczenie | Wersja HTTP |
|---|---|---|---|
| 500 | Internal Server Error | Serwer napotkał nieznany, niemożliwy do rozwiązania problem. | Dostępne od HTTP/0.9 |
| 501 | Not Implemented | Serwer nie obsługuje metody użytej w żądaniu, takiej jak POST i PUT. Serwer musi implementować jedynie metody GET i HEAD, zgodnie ze specyfikacją RFC2616. |
Dostępne od HTTP/0.9 |
| 502 | Bad Gateway | Serwer, pełniąc rolę bramy, otrzymał nieprawidłową odpowiedź HTTP od serwera nadrzędnego. | Dostępne od HTTP/0.9 |
| 503 | Service Unavailable | Serwer nie jest obecnie w stanie obsłużyć żądania z powodu tymczasowej konserwacji lub przeciążenia. Taka sytuacja jest tymczasowa i zostanie naprawiona po pewnym czasie. Jeśli można oszacować czas opóźnienia, odpowiedź może zawierać nagłówek Retry-After:. W przeciwnym razie klient powinien potraktować ją jako odpowiedź 500. Jednocześnie serwer powinien zwrócić czytelną stronę z wyjaśnieniem problemu wraz z nagłówkami dotyczącymi pamięci podręcznej. |
Dostępne od HTTP/0.9 |
| 504 | Gateway Timeout | Serwer, pełniąc rolę bramy, nie może uzyskać na czas odpowiedzi od serwera nadrzędnego. | Dostępne od HTTP/1.1 |
| 505 | HTTP Version Not Supported | Serwer nie obsługuje wersji protokołu HTTP użytej w żądaniu klienta. | Dostępne od HTTP/1.1 |