HTTP Status Codes Uncovered: Your Ultimate Guide
In the digital age, our lives are intricately interwoven with the World Wide Web. Every click, every search, and every page load is a conversation between your browser and a web server. But have you ever wondered how these two entities communicate?
Enter HTTP (HyperText Transfer Protocol) codes – the unsung heroes of our online interactions. These three-digit numbers serve as a universal language, signaling the outcome of a web request, whether it’s a successful webpage load, a redirect, or an error. Yet, many of us remain oblivious to their significance.
In this blog post, we’ll journey through the world of HTTP codes, unraveling their mysteries and shedding light on what each code truly signifies.
Whether you’re a curious internet user or an aspiring web developer, understanding HTTP codes is key to comprehending the digital conversations happening behind the scenes. Join me, and let’s decode the web!
The Impact of HTTP Status Codes on SEO
Getting a handle on the technical parts of SEO might seem hard, but it’s necessary to improve the exposure of your website. If your site has a lot of error codes, search engines like Google may think it’s not reliable, which could hurt your SEO success.
Certain HTTP status numbers are very important for SEO:
302: This code means that the redirect is only temporary. It tells search engines that the original URL will come back, so they don’t have to update the page index for better SEO.
404: If search engine bots can’t get to your information, it can hurt your SEO.
410: This number tells search engines to take the page right away out of their index. So, the page will no longer show up in search results.
500: Google doesn’t like it when your site is down, so this server error can hurt your results.
503: Search engines don’t like it when you get a lot of “service unavailable” errors, and if you keep getting them, they might stop indexing your page, which hurts your rankings.
On the bright side, using HTTP status codes in the right way can help your website’s SEO. For example, Google likes 301 permanent links for pages that can’t be found. This keeps your website’s SEO power. Getting a 200 HTTP code is also a good sign. It means that everything is working as it should, which is a “green flag” for Google.
List of all HTTP Status Codes
HTTP 1xx Status Codes
Code | Name | Description |
---|---|---|
100 | Continue | The initial part of a request has been received and has not yet been rejected by the server. |
101 | Switching Protocols | The server understands and is willing to comply with the client's request to switch protocols. |
102 | Processing (WebDAV) | Used to indicate that 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 the final HTTP message. |
HTTP 2xx Status Codes
Code | Name | Description |
---|---|---|
200 | OK | The request has succeeded. |
201 | Created | The request has been fulfilled and has resulted in a new resource being created. |
202 | Accepted | The request has been accepted for processing, but the processing has not been completed. |
203 | Non-Authoritative Information | The request was successful but the enclosed payload has been modified by a transforming proxy from that of the origin server's 200 (OK) response. |
204 | No Content | The server has successfully fulfilled the request and there is no additional content to send in the response payload body. |
205 | Reset Content | The server has fulfilled the request and desires that the user agent reset the "document view", which caused the request to be sent, to its original state. |
206 | Partial Content | The server is successfully fulfilling a range request for the target resource by transferring one or more parts of the selected representation that correspond to the specified byte range(s). |
207 | Multi-Status (WebDAV) | Used to provide status about multiple independent operations. |
208 | Already Reported (WebDAV) | Used to avoid duplicate listing of a resource in responses. |
226 | IM Used | The server has fulfilled a GET request for the resource, and the response is a representation of the result of one or more instance-manipulations applied to the current instance. |
HTTP 3xx Status Codes
Code | Name | Description |
---|---|---|
300 | Multiple Choices | The target resource has more than one representation, and the user agent must select one of them to access the resource. |
301 | Moved Permanently | The URI requested has been assigned a new permanent URI and any future references to this resource should use one of the returned URIs. |
302 | Found | The target resource resides temporarily under a different URI and the user agent must continue using the original URI for future requests. |
303 | See Other | The server is redirecting the user agent to a different resource, which will provide a response to the original request. |
304 | Not Modified | The resource has not been modified since the version specified by the request headers and there is no need to retransmit the resource since the client still has a previously-downloaded copy. |
305 | Use Proxy | Defined in a previous version of the HTTP specification to indicate that a requested response must be accessed by a proxy. It has been deprecated due to security concerns. |
306 | Switch Proxy | No longer used. Originally meant "Subsequent requests should use the specified proxy." |
307 | Temporary Redirect | The target resource resides temporarily under a different URI and the user agent must not change the request method if it performs an automatic redirection to that URI. |
308 | Permanent Redirect | The target resource has been assigned a new permanent URI and any future references to this resource ought to use one of the enclosed URIs. |
HTTP 4xx Status Codes
Code | Name | Description |
---|---|---|
400 | Bad Request | The server cannot or will not process the request due to an apparent client error. |
401 | Unauthorized | Similar to 403, but specifically for cases where authentication is required and has failed or has not been provided. |
402 | Payment Required | Reserved for future use. |
403 | Forbidden | The client does not have the necessary permissions for the resource. |
404 | Not Found | The requested resource could not be found but may be available in the future. |
405 | Method Not Allowed | A request method is not supported for the requested resource. |
406 | Not Acceptable | The requested resource is capable of generating only content not acceptable according to the Accept headers sent in the request. |
407 | Proxy Authentication Required | The client must first authenticate itself with the proxy. |
408 | Request Timeout | The server timed out waiting for the request. |
409 | Conflict | The request could not be completed due to a conflict with the current state of the resource. |
410 | Gone | The requested resource is no longer available and will not be available again. |
411 | Length Required | The request did not specify the length of its content, which is required by the requested resource. |
412 | Precondition Failed | The server does not meet one of the preconditions that the requester put on the request. |
413 | Payload Too Large | The request is larger than the server is willing or able to process. |
414 | URI Too Long | The URI provided was too long for the server to process. |
415 | Unsupported Media Type | The request entity has a media type which the server or resource does not support. |
416 | Range Not Satisfiable | The client has asked for a portion of the file, but the server cannot supply that portion. |
417 | Expectation Failed | The server cannot meet the requirements of the Expect request-header field. |
418 | I'm a teapot | This code was defined in 1998 as one of the traditional IETF April Fools' jokes. It is not expected to be implemented by actual HTTP servers. |
421 | Misdirected Request | The request was directed at a server that is not able to produce a response. |
422 | Unprocessable Entity (WebDAV) | The request was well-formed but was unable to be followed due to semantic errors. |
423 | Locked (WebDAV) | The resource that is being accessed is locked. |
424 | Failed Dependency (WebDAV) | The request failed because it depended on another request and that request failed. |
425 | Too Early | Indicates that the server is unwilling to risk processing a request that might be replayed. |
426 | Upgrade Required | The client should switch to a different protocol. |
428 | Precondition Required | The origin server requires the request to be conditional. |
429 | Too Many Requests | The user has sent too many requests in a given amount of time ("rate limiting"). |
431 | Request Header Fields Too Large | The server is unwilling to process the request because its header fields are too large. |
451 | Unavailable For Legal Reasons | The server is denying access to the resource as a consequence of a legal demand. |
HTTP 5xx Status Codes
Code | Name | 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, while acting as a gateway or proxy, received an invalid response from an upstream server. |
503 | Service Unavailable | The server is currently unable to handle the request due to temporary overloading or maintenance of the server. |
504 | Gateway Timeout | The server, while acting as a gateway or proxy, did not receive a timely response from an upstream server or some other auxiliary server. |
505 | HTTP Version Not Supported | The server does not support the HTTP protocol version that was used in the request. |
506 | Variant Also Negotiates | Transparent content negotiation for the request results in a circular reference. |
507 | Insufficient Storage (WebDAV) | The server is unable to store the representation needed to complete the request. |
508 | Loop Detected (WebDAV) | 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. |