Aug 15, 2011

HTTP Status codes explained

Different Types of HTTP Status Codes

What is an HTTP status code and why should you care about them, if you have a website or a blog?

Whenever you enter the address of a webpage in your browser’s address bar, the browser requests data from the server where the page is originally hosted. The web server returns the data but before the browser receives and renders the data at the clients end, an HTTP header is returned by the web server that has the status code of the given page.

In general, HTTP status codes are not meant for human visitors but both desktop and mobile browsers use this information to know more about the present condition of the webpage in question. If the page is in a healthy state, the HTTP status code returned should be a 200 OK. If the page has been moved to a new address, the HTTP status code should be 301 and so on.

There are lots of different HTTP status codes in place and the following table should explain what are the different types of HTTP header responses and their purpose in brief detail:

HTTP Status code Type Description Link Juice




Redirected
300 Redirection The server is waiting for an action from the user so that it can fetch a new resource Depends
301* Redirected The old page has permanently moved to a new web address Carried
302 Redirected The old page has temporary moved to a new location but the user should continue using the old URL later Not carried
303 Conditional redirection The user is requested to do some action (GET request) so that the current page may redirect to another resource. The GET request
is conditional. Not carried

304 Conditional redirection The user has performed some action (conditional GET request) but the current page was not modified. Not carried
305 Redirected The user can only access the requested page using a proxy. Not carried
306 Redirected The server is fetching the page from another location but it will soon fetch the page from its older source. This status code is rarely used over a 302. Not carried
Successful
200 ** Success The server has processed the webpage correctly. Carried
201 Success The server has processed the requested page and created a new page or resource during the request. Depends
202 Partial success The server has received the request for the webpage and is currently processing it. Carried
203 Partial success The server has received the request for the webpage and it is waiting for a resource from another page. Carried
204 Partial success The server processed the request for the webpage but no content has been returned due to an error. Carried
205 Partial success Same as 204 but this time the server is waiting for the user to complete a specific action. Carried
206 partial Success The server received a partial GET request from the user. Carried




Request Errors
400 Fail Wrong syntax sent by the user Not carried
401 Authentication required The page is behind a login and/or requires an authentication from the user. Not carried
403 *** Forbidden The server denied the request. Not carried
404 Page does not exist The requested page is not found on the server. Not carried
405 Not allowed The server is not allowing any request to the page for this user. Not carried
406 Not allowed The server can’t respond to the request at this time. Not carried
407 Proxy required The resource must be requested via a proxy. Not carried
408 Timed out The server timed out performing the request. Not carried
409 Conflict The user’s action has given rise to a conflict of resource. Not carried
410 # Permanently removed The page has been permanently removed from the server. Not carried




Server Errors
500 Internal Server error The server is facing issues with some internal configuration and thus unable to fulfill the request at this time Not carried
501 Not recognized The server is not equipped to understand the type of request sent Not carried
502 Bad gateway While fulfilling the current request, the server received an incorrect response from its upstream server Not carried
503 Server not available The server is facing downtime or is currently unavailable Not carried
504 Gateway timeout The server is acting as a gateway or a proxy server to another resource and didnt received a timely request from the user Not carried
505 Server does not support protocol The server is not configured to support the HTTP protocol version that is used in the request Not carried


* This is the only way to tell search engines that your old page has moved to a new location and the newer URL should be re-crawled and re-indexed. Only this server header preserves link juice and Google Pagerank but remember that if the page is part of a redirect chain, a considerable portion of the PR may be lost overtime.

** This should be normally the HTTP status code returned by a webpage if it’s static in nature and needs no GET request from the user.

*** If any of your pages return a 403 HTTP status code, it means that your web server denied the request of the page to Googlebot and human visitors. A possible case is when your web host is facing downtimes or it is blocking spiders and search bots from accessing some parts of your website, so you should be careful about it.

# This is similar to a 404 error but the standard practice is to 301 redirect the missing page to it’s newer location. If the page has no new location, it is recommended to return a 410. If you have temporarily removed the page from the server, use a 503 instead.

No comments:

Post a Comment

Popular Posts