The web works by the HTTP protocol and each resource is fetched using a request. All requests to a server return a specific status code, which indicates if the request was successful or not.
Status codes are divided into the following categories:
- 1xx: Informational
- 2xx: Success
- 3xx: Redirection
- 4xx: Client Error
- 5xx: Server Error
This means that just by looking at the first number you can identify what the issue is.
Some of the most popular status codes are displayed in the table below:
Status Code |
Code Name |
|
Explanation |
100 |
Continue |
|
Successfully connected and headers received. Server wants other content (like POST data). |
200 |
OK |
|
Successfully connected and page is returned. |
204 |
No Content |
|
Successfully connected but no page is returned. |
300 |
Multiple Choices |
|
There are different pages for the client to follow |
301 |
Moved Permanently |
|
The resource has moved to another URI |
304 |
Not Modified |
|
Content has not been modified since the last request |
307 |
Temporary Redirect |
|
Resource has moved to another location for a temporary period. |
400 |
Bad Request |
|
The HTTP request was constructed with wrong syntax |
401 |
Unauthorized |
|
Not enough permission to access the resource. |
403 |
Forbidden |
|
Not enough permission to access the resource. |
404 |
Not Found |
|
Most popular error code. Page not found |
405 |
Method Not Allowed |
|
This HTTP request is not allowed |
500 |
Internal Server Error |
|
There was an error on the server. |
501 |
Not Implemented |
|
Request method not recognized by the server |
502 |
Bad Gateway |
|
The server acting as a gateway received an invalid response |
503 |
Service Unavailable |
|
The server is currently unavailable |
504 |
Gateway Timeout |
|
The server acting as a gateway received a timeout |
505 |
HTTP Version Not Supported |
|
The server does not support the HTTP Protocol version. |
For more explanation on this topic please refer to the
Wikipedia article.