HTTP return Status Codes
If a request sent to your server requires that a webpage on your website be displayed (for example, when a user accesses your webpage through a browser or crawls a webpage through googlebot ), the server returns the HTTP status code to respond to the request.
This status code provides information about the request status, telling googlebot about your website and the requested webpage.
Some common status codes include:
200-the server returns the webpage successfully
404-the requested webpage does not exist
503-the server is temporarily unavailable
The complete list of HTTP status codes is provided below. Click the link to learn more. You can also visit the W3C Web page about HTTP status code for more information.
1xx (temporary response)
Status Code indicating a temporary response and requiring the requester to continue the operation.
Code Description
100 (CONTINUE) the requester shall continue to make the request. The server returns this code, indicating that the first part of the request has been received and is waiting for the remaining part.
101 (switching protocol) the requester has requested the server switching protocol. The server has confirmed and is ready to switch.
2XX (successful)
Indicates that the server has successfully processed the Request status code.
Code Description
200 (successful) the server has successfully processed the request. Generally, this indicates that the server provides the requested webpage. If this status is displayed for your robots.txt file, it indicates that googlebot has successfully retrieved the file.
The 201 (created) request is successful and the server creates a new resource.
202 (accepted) the server has accepted the request but has not yet processed it.
203 (unauthorized information) the server has successfully processed the request, but the returned information may come from another source.
204 (NO content) The server successfully processed the request, but did not return any content.
205 (reset content) The server successfully processed the request, but did not return any content. Unlike the 204 response, this response requires the requester to reset the document view (for example, clear the form content to enter new content ).
206 (partial content) The server successfully processes some GET requests.
3xx (redirection)
Further operations are required to complete the request. These status codes are usually used for redirection. Google recommends that you use redirection no more than 5 times in each request. You can use the website administrator tool to check if googlebot encounters any problems when crawling the redirected webpage. The Web crawling page under the diagnosis lists the URLs that Google bot cannot crawl due to redirection errors.
Code Description
300 (multiple options) for requests, the server can perform multiple operations. The server selects an operation based on the requester (User Agent) or provides an operation list for the requester to select.
The webpage of the 301 (permanent mobile) request has been permanently moved to a new location. When the server returns this response (response to a get or head request), it automatically redirects the requester to a new location. You should use this code to tell googlebot that a webpage or website has been permanently moved to a new location.
302 (temporarily mobile) the server is currently responding to requests from different web pages, but the requester should continue to use the original location for subsequent requests. Similar to code 301 in response to a get or head request, this code automatically redirects the requester to a different location. However, you should not use this code to tell googlebot that a webpage or website has been moved, because googlebot will continue to capture the original location and write it into the index.
303 (view other locations) when the requester uses a separate GET request for different locations to retrieve the response, the server returns this code. For all requests except head, the server automatically redirects to other locations.
304 (not modified) the requested webpage has not been modified since the last request. When the server returns this response, no webpage content is returned. If the webpage has never been changed since the last request, you should Configure the server to return this response (called the IF-modified-since HTTP header ). The server can tell googlebot that the webpage has not been changed since the previous capture, thus saving bandwidth and overhead.
305 (using a proxy) the requester can only use a proxy to access the requested webpage. If the server returns this response, it also indicates that the requester should use a proxy.
307 (temporarily redirected) The server currently responds to requests from different web pages, but the requester should continue to use the original location for future requests. Similar to code 301 In response to get and head requests, this code automatically redirects the requester to different locations. However, you should not use this code to tell googlebot that a page or website has been moved, because googlebot will continue to capture the original location and write it into the index.
4xx (request error)
These status codes indicate that the request may fail and impede server processing.
Code Description
400 (incorrect request) the server does not understand the request syntax.
401 (unauthorized) requests require authentication. The server may return this response for webpages that require logon.
403 (Forbidden) The server rejects the request. If you see that googlebot receives this status code when attempting to capture a valid webpage on your website (you can see this information on the web capture page that is disconnected by Google's website administrator tool ), it may be that your server or host rejects googlebot access.
404 (not found) The server cannot find the requested webpage. For example, if a webpage does not exist on the request server, the server usually returns this code. If you do not have the robots.txt file on your website and you see this status on the robots.txt page of the Google website administrator tool diagnosis tab, this is the correct status. However, if you have a robots.txt file and you see this status again, it indicates that your robots.txt file may be named incorrectly or in the wrong location (the file should be in the top-level domain name, named robots.txt ).
If you see this status (on the HTTP Error page of the "diagnosis" tab) about the URL that the googlebot is trying to crawl ), it indicates that the bot tracing may be an invalid link of another page (it is an old link or a wrong link entered ).
405 (disabled method) disable the method specified in the request.
406 (unacceptable) the requested content features cannot be used to respond to the requested webpage.
407 (proxy authorization required) this status code is similar to 401 (unauthorized), but the specified requester should authorize the use of proxy. If the server returns this response, it also specifies the proxy that the requester should use.
408 (request timeout) timeout occurred when the server waited for the request.
409 conflict occurs when the server completes the request. The server must contain conflict information in the response. The server may return this code when responding to a put request that is in conflict with the previous request, along with a list of differences between the two requests.
410 (Deleted) If the requested resource has been permanently deleted, the server returns this response. This code is similar to the 404 (not found) code, but is sometimes used to replace the 404 code when the resource exists before and does not exist. If the resource has been permanently deleted, you should use 301 to specify a new location for the resource.
The 411 (valid length required) server does not accept requests that do not contain valid Content Length header fields.
412 (not meeting the prerequisites) the server does not meet one of the prerequisites set by the requester in the request.
413 (the Request Entity is too large) The server cannot process the request because the request entity is too large and exceeds the server's processing capability.
414 (the requested URI is too long) The request URI (usually the URL) is too long and cannot be processed by the server.
415 (unsupported media type) The request format is not supported by the request page.
416 (the request range does not meet the requirements) if the page cannot provide the request range, the server returns this status code.
417 (not meeting the expected requirements) the server does not meet the "expected" request header field requirements.
5xx (server error)
These status codes indicate an internal error occurred when the server attempted to process the request. These errors may be server errors rather than request errors.
Code Description
500 (internal server error) The server encounters an error and cannot complete the request.
501 (not implemented) the server does not have the function to complete the request. For example, this Code may be returned when the server cannot identify the request method.
The 502 (error gateway) server acts as a gateway or proxy and receives an invalid response from the upstream server.
503 (Service unavailable) servers are currently unavailable (due to overload or downtime maintenance ). Generally, this is only a temporary status.
504 (gateway timeout) The server acts as a gateway or proxy, but does not receive a request from the upstream server in time.
505 (HTTP Version Not Supported) the server does not support the HTTP protocol version used in the request.
HTTP return Status Codes