Find Your HTTP Status Code
Search by code number or error name for instant solutions
Most Common HTTP Errors
Browse by Category
Platform-Specific Guides
HTTP Errors List: All HTTP Status Codes
Every status code in the IANA HTTP Status Code Registry that you are likely to meet, followed by common unofficial codes. HTTP errors are the 4xx (client error) and 5xx (server error) classes.
1xx Informational Responses
| Code | Status | Description |
|---|---|---|
| 100 | Continue | The server has received the request headers and the client should proceed to send the request body. |
| 101 | Switching Protocols | The server is switching protocols as requested by the client. |
| 102 | Processing | The server has received and is processing the request, but no response is available yet. |
| 103 | Early Hints | Used to return some response headers before final HTTP message. |
2xx Success
| Code | Status | Description |
|---|---|---|
| 200 | OK | The request has succeeded. |
| 201 | Created | The request has been fulfilled and a new resource has been created. |
| 202 | Accepted | The request has been accepted for processing, but processing has not been completed. |
| 203 | Non-Authoritative Information | The request was successful but the returned metadata may have been modified by a proxy. |
| 204 | No Content | The server successfully processed the request but is not returning any content. |
| 205 | Reset Content | The request succeeded and the client should reset the document view that sent the request. |
| 206 | Partial Content | The server is delivering only part of the resource in response to a Range request. |
| 207 | Multi-Status | Conveys status for multiple independent operations in a single response. |
| 208 | Already Reported | The members of a WebDAV binding have already been enumerated and are not repeated. |
| 226 | IM Used | The server fulfilled a GET request and the response is a result of instance manipulations applied to the current instance. |
3xx Redirection
| Code | Status | Description |
|---|---|---|
| 300 | Multiple Choices | The request has more than one possible response and the client may choose among them. |
| 301 | Moved Permanently | The resource has been permanently moved to a new URL. |
| 302 | Found | The resource temporarily resides at a different URL. |
| 303 | See Other | The response to the request can be found at another URL using GET. |
| 304 | Not Modified | The resource has not been modified since the last request. |
| 305 | Use Proxy | The requested resource must be accessed through the proxy given in the Location header. |
| 306 | Unused | 306 is a reserved status code that is no longer used. |
| 307 | Temporary Redirect | The request should be repeated with another URL, but future requests should still use the original URL. |
| 308 | Permanent Redirect | The resource has permanently moved to another URL, and the request method should not change. |
4xx Client Errors
| Code | Status | Description |
|---|---|---|
| 400 | Bad Request | The server cannot process the request due to a client error. |
| 401 | Unauthorized | Authentication is required and has failed or has not been provided. |
| 402 | Payment Required | The request cannot be processed until the client makes a payment. |
| 403 | Forbidden | The client does not have access rights to the content. |
| 404 | Not Found | The server cannot find the requested resource. |
| 405 | Method Not Allowed | The request method is not supported for the requested resource. |
| 406 | Not Acceptable | The server cannot produce a response matching the Accept headers sent in the request. |
| 407 | Proxy Authentication Required | The client must authenticate with a proxy server before the request can proceed. |
| 408 | Request Timeout | The server timed out waiting for the request. |
| 409 | Conflict | The request conflicts with the current state of the server. |
| 410 | Gone | The resource is no longer available and will not be available again. |
| 411 | Length Required | The server refuses the request because it lacks a Content-Length header. |
| 412 | Precondition Failed | One or more conditions in the request headers evaluated to false. |
| 413 | Content Too Large | The request content (body) is larger than the server is willing or able to process. |
| 414 | URI Too Long | The URI requested by the client is longer than the server is willing to interpret. |
| 415 | Unsupported Media Type | The media format of the requested data is not supported by the server. |
| 416 | Range Not Satisfiable | The Range header requests a portion of the file that the server cannot supply. |
| 417 | Expectation Failed | The server cannot meet the requirements of the Expect request header. |
| 418 | I'm a teapot | The server refuses to brew coffee because it is, permanently, a teapot. |
| 421 | Misdirected Request | The request was sent to a server that cannot produce a response for the target authority. |
| 422 | Unprocessable Content | The request was well-formed but contains semantic errors. |
| 423 | Locked | The resource being accessed is locked. |
| 424 | Failed Dependency | The request failed because a previous request it depended on failed. |
| 425 | Too Early | The server is unwilling to process a request that might be replayed. |
| 426 | Upgrade Required | The client must switch to a different protocol to continue. |
| 428 | Precondition Required | The server requires the request to be conditional. |
| 429 | Too Many Requests | The user has sent too many requests in a given amount of time. |
| 431 | Request Header Fields Too Large | The server refuses the request because its header fields are too large. |
| 451 | Unavailable For Legal Reasons | The resource is unavailable due to legal reasons. |
5xx Server Errors
| Code | Status | Description |
|---|---|---|
| 500 | Internal Server Error | The server encountered an unexpected condition that prevented it from fulfilling the request. |
| 501 | Not Implemented | The server does not support the functionality required to fulfill the request. |
| 502 | Bad Gateway | The server received an invalid response from the upstream server. |
| 503 | Service Unavailable | The server is currently unable to handle the request due to temporary overloading or maintenance. |
| 504 | Gateway Timeout | The server did not receive a timely response from the upstream server. |
| 505 | HTTP Version Not Supported | The server does not support the HTTP protocol version used in the request. |
| 506 | Variant Also Negotiates | The server has an internal configuration error in content negotiation. |
| 507 | Insufficient Storage | The server cannot store the representation needed to complete the request. |
| 508 | Loop Detected | The server detected an infinite loop while processing the request. |
| 510 | Not Extended | Further extensions to the request are required for the server to fulfill it. |
| 511 | Network Authentication Required | The client needs to authenticate to gain network access. |
Unofficial Codes (Cloudflare, nginx, hosting)
Not registered with IANA; their meaning depends on the product that sends them. More in the unofficial status codes guide, including AWS load balancer and IIS codes.
| Code | Status | Description |
|---|---|---|
| 520 | Web Server Returned an Unknown Error | Cloudflare - Cloudflare received an empty, unknown, or unexpected response from the origin server. |
| 521 | Web Server Is Down | Cloudflare - Cloudflare cannot establish a connection to the origin web server. |
| 522 | Connection Timed Out | Cloudflare - Cloudflare timed out trying to establish a TCP connection to the origin. |
| 523 | Origin Is Unreachable | Cloudflare - Cloudflare cannot reach the origin server at all. |
| 524 | A Timeout Occurred | Cloudflare - Cloudflare connected to the origin but did not receive a timely HTTP response. |
| 525 | SSL Handshake Failed | Cloudflare - The SSL/TLS handshake between Cloudflare and the origin failed. |
| 526 | Invalid SSL Certificate | Cloudflare - Cloudflare could not validate the origin server's SSL certificate. |
| 530 | Origin DNS Error | Cloudflare - Cloudflare returns 530 together with a 1xxx error code; a common case is an origin DNS resolution failure. |
| 444 | No Response | nginx - An nginx-specific code that makes nginx close the connection without sending any response. |
| 497 | HTTP Request Sent to HTTPS Port | nginx - An nginx-specific code for a plain-HTTP request that arrived on a port configured for HTTPS. |
| 499 | Client Closed Request | nginx - An nginx-specific code logged when the client closes the connection before nginx sends a response. |
| 509 | Bandwidth Limit Exceeded | cPanel / Apache hosting - A non-standard code shown by some shared hosts when a site has used up its bandwidth allowance. |
Why HTTPError.net?
Lightning Fast
Static pages with no frameworks or web fonts, so answers load quickly even on a slow connection in the middle of an outage.
Platform-Specific Solutions
Not just generic definitions. Find fixes and configuration snippets for Nginx, Apache, PHP, Node.js, WordPress, IIS and Cloudflare.
Complete & Accurate
Standard codes are linked to their section of RFC 9110 or the RFC that defines them, and unofficial codes are clearly labeled with the vendor that uses them.