HTTP status codes are often used to identify a website problem by the browser. When a person tries to open a webpage, he/she gets a response code called HTTP status code or response code. Here are all the HTTP response error and status codes that you should know about. If an HTTP status code is returned, that doesn’t always indicate error as successful returns also have a response code.
When do you get HTTP status code?
You use a browser like Google Chrome or Mozilla Firefox to open a webpage. When you enter a webpage/website URL in the address bar and hit the Enter button, the browser pings the website’s server. The reply from the web site’s server is known as the HTTP status code or HTTP status line. In other words, when you try to open a website, you get an HTTP status code.
There are several response codes. Different codes define different situations. In this article, you are about to get an overview of each HTTP status code so that you can fix the issue (if any) within moments.
Types of HTTP status codes
There are five different categories of HTTP status codes. Although there are more than five response codes identified till date, the first digit of the status code helps you recognize the type of situation.
The categories of HTTP response status codes are:
- 1xx: Informational status code – It lets you know that the user’s request has been accepted by the server, and a response is in the process. This generally happens on websites that take a quite long time to display the requested information.
- 2xx: It helps you understand that the server-side action is completed and a result is already on your screen or about to come within moments.
- 3xx: Redirection – If a webpage was redirected by the website admin, this kind of status code appears.
- 4xx: It lets you identify the missing link between client and web server. If the user has searched for something, which is unavailable right now, he/she can get such error codes.
- 5xx: If the webserver failed to process your request, this status code appears.
Official HTTP status codes and reason phrases
These are some official HTTP Status Codes, and when they appear.
- 100 (Continue): The user or client should not do anything since this is the first informational status code which indicates that the client/user can continue working.
- 101 (Switching Protocols): The server is switching the protocol to show the requested information to the client.
- 200 (OK): It is the first success code which appears when the webserver returns with the requested information.
- 201 (Created)
- 202 (Accepted): It appears when the server accepts the user’s request.
- 203 (Non-Authoritative Information)
- 204 (No Content)
- 205 (Reset Content)
- 206 (Partial Content)
- 300 (Multiple Choices)
- 301 (Moved Permanently): If the web-admin moved content from one URI to another, this status code appears. Browser can display too many redirects error as well.
- 302 (Moved but Found Under Different URI)
- 303 (See Other)
- 304 (Not Modified)
- 305 (Use Proxy): If content is regionally blocked, the webpage displays this error code to ask the client to use proxy.
- 307 (Temporary Redirect): If a URI is redirected for a small span of time, this status code returns.
- 400 (Bad Request)
- 401 (Unauthorized): If the client tries to open an unauthorized URI, he/she would be greeted with this code.
- 402 (Payment Required): If a webpage is asking for payment confirmation, 402 appears.
- 403 (Forbidden): When the server understands the request but doesn’t show result, it occurs.
- 404 (Not Found): If the requested item is removed from the server, this status code appears.
- 405 (Method Not Allowed)
- 406 (Not Acceptable)
- 407 (Proxy Authentication Required)
- 408 (Request Time-out)
- 409 (Conflict)
- 410 (Gone)
- 411 (Length Required)
- 412 (Precondition Failed)
- 413 (Request Entity Too Large)
- 414 (Request-URI Too Large)
- 415 (Unsupported Media Type)
- 416 (Requested range not satisfiable)
- 417 (Expectation Failed)
- 500 (Internal Server Error): This is a server-side issue and cannot be fixed by a client.
- 501 (Not Implemented)
- 502 (Bad Gateway)
- 503 (Service Unavailable): The server is currently under maintenance or failed because of overloading.
- 504 (gateway Time-out)
- 505 (HTTP Version not supported): Browser-based problem. It appears when the browser doesn’t support the used HTTP version.
These HTTP status codes depend on the application. For example, you may not always get a 405 (Method Not Allowed) error. As it is under 4xx series, the application can display 400 (Bad Request) error as well. In other words, if the application supports the status line or proper information is included in the application, the actual error code can appear.
Now here are some of the most common HTTP status codes, and how to fix them.
What does HTTP status 100 and 101 mean? What to do when you get 100 continue and 101 switching protocolserror?
As mentioned, 1xx status codes are informational codes. You do not need to do anything since nothing is wrong on the user side. HTTP status 100 means everything is going great, and there is no problem at all. Similarly, HTTP status 101 means the server is switching the protocols to show requested information. Again, there is nothing to do when 100 and 101 status code appears.
What does HTTP status 301 mean? What to do when you get 301 moved permanently error?
HTTP status 301 means the URI is moved permanently. You can use the old URI but it is better to use the updated URI to access the content. Sometimes the web-admin changes a URL of a webpage due to some reasons and makes a redirection. When the user or client tries to open the old webpage, they get 301 moved permanently status phrase.
What does HTTP status 404 mean? How do I fix 404 not found error?
HTTP status 404 means the requested information was deleted from the webserver. If user or client is trying to access a webpage or URI, which no longer exists, the 404 Not Found phrase appears on the screen. There is no workaround to fix this issue. You need to find the valid webpage or content on the webserver.
What is HTTP status 500mean? How do I fix 500 internal server error?
The HTTP status code 500 means there is a problem in the web server that you are trying to access. If the webserver is having some internal issues, the webpage can show this error message. As an admin, you need to check what is wrong in your server’s settings to fix 500 Internal Server error.
What does HTTP status 503 mean? How do you fix 503 service unavailable error?
HTTP 503 Service Unavailable means there is some problem between the database and server files. You need to search for such error to fix 503 error. There is no other definite solution to this problem.
Some error codes like 305 Use Proxy and 407 Proxy Authentication Required are very common. Although many applications do not show these error messages, people encounter this problem frequently. If you have got such error, you should check the proxy settings from the Windows Settings panel.
Unofficial HTTP status codes and reason phrases
There are some unofficial HTTP response status codes. Some of them are as follows:
- 103 (Checkpoint)
- 218 (This is fine)
- 419 (Page Expired)
- 420 (Method Failure)
- 430 (Request Header Fields Too Large)
- 440 (Login Time-out)
- 444 (No Response) – nginx
- 449 (Retry With)
- 450 (Blocked by Windows Parental Controls) – Microsoft
- 451 (Redirect)
- 494 (Request Header Too Large) – nginx
- 495 (SSL Certificate Error) – nginx
- 497 (HTTP Request Sent to HTTPS Port) – nginx
- 498 (Invalid Token)
- 499 (Token Required)/(Client Closed Request) – nginx
- 509 (Bandwidth Limit Exceeded)
- 520 (Unknown Error) – Cloudflare
- 521 (Web Server is Down) – Cloudflare
- 522 (Connection Times Out) -CloudFlare
- 523 (Origin is Unreachable) – Cloudflare
- 524 (A Timeout Occured) – Cloudflare
- 525 (SSL handshake Failed) – Cloudflare
- 526 (Invalid SSL Certificate)
- 527 (Railgun Error) – Cloudflare
- 530 (Site is Frozen)
- 598 (Network Read Timeout Error)
HTTP response status code appears in all situations. No matter whether you got a positive or negative result from the web server, a status code has come to your browser or browsing client for sure. If you are getting a negative response code, you can check out the HTTP response-phrase, and fix the issue immediately.