http status codes

HTTP Response Status Codes Cheat Sheet – Complete Guide

When you visit websites, your browser – client – makes a connection to the webserver through a network protocol called HTTP. These network connections support sending response data from clients including the content of web pages and some protocol control information as well. Sometimes, you cannot succeed in accessing the website you are trying to access. Instead, you see an error or status code like 404 Page Not Found. These type of errors are HTTP status codes. We are explain all the status codes in this article.

When you visit websites, your browser – client – makes a connection to the webserver through a network protocol called HTTP. These network connections support sending response data from clients including the content of web pages and some protocol control information as well. Sometimes, you cannot succeed in accessing the website you are trying to access. Instead, you see an error or status code like 404 Page Not Found. These type of errors are HTTP status codes. We are explain all the status codes in this article.

Table of Contents

What are HTTP status codes?

An HTTP status code is a server response to a browser request. When you visit a website, your browser sends a request to the site’s server, and the server then responds to the browser’s request with a three-digit code: HTTP status code.

These status codes are the Internet equivalent of interaction between your browser and the server. They communicate whether things are A-OK, touch-and-go between the two or something is wrong. Understanding status codes and how to use them will help you quickly diagnose site errors to reduce downtime on your site. You can also use some of these http status codes to help search engines and people reach your site; For example, a 301 redirect will tell bots and people that a page has moved permanently elsewhere.

The first digit of each three-digit status code begins with one of the five, 1 through 5; You can express it as 1xx or 5xx to indicate a status code in that range. Each of those categories includes a separate class of server response.

Common HTTP Status Code Classes:

1xx – Informational – These are provisional responses to be used while the server continues to process the request. They are rarely used.

2xx – Success – When code that works as things used is used. Different success codes are returned based on what, specifically, the request is made.

3xx – Redirection – The code used to ask the client to look for the requested resource elsewhere.

4xx – Client error – These codes tell the client that he has done something wrong.

5xx – Server error – The code for something on the server is not working as expected.

The most important HTTP Status Codes for SEO

Understanding the status codes that have the most impact on SEO is important for every professional SEO and website owner. Want to know more about SEO, read What is SEO & How it Works?

Imagine that you are working on a site that has 5xx errors; You might want to know off the top of your head that this is a server problem. 4xx errors affect the visitor experience, so immediately you can start thinking about any changes to your URL, or whether you have any deleted pages. Once you understand the cause of the issue, you can focus on implementing a custom 404 page or use the all-powerful 301 redirections to send visitors to the right place.

1xx HTTP Status Codes — Informational

The HTTP status code in the 1xx class is intended to be provisional, before a full and complete second response is sent by the server. They were introduced in HTTP / 1.1, so early browsers implementing HTTP / 1.0 cannot handle them, and the server should not terminate the 1xx code in those cases.

  • 100 – Continue;
  • 101 – Switching protocol;
  • 103 – Checkpoints.

HTTP status code- 100 continue

This interim behavior indicates that everything is fine until now and the customer must continue dispatching, or ignore the behavior if already dispatched has finished.

HTTP status code- 101 switching protocols

This code is sent from the client in response to the upgrade header and indicates the protocol switching to the server.

HTTP status code- 102 processing (WebDAV)

This code indicates that the server has received and is running Send, but has not yet received a response.

2xx HTTP status codes – Success

Basically, these are successful requests that show that everything happened as planned (which is usually going on for you):

  • 200 – Ok 
  • 201 – Created;
  • 202 – Approved;
  • 203 – non-official information
  • 204 – No Content
  • 205 – reset content;
  • 206 – Partial Material.
  • 207 – Multi-status
  • 208 already reported
  • 226 IM is used

200 Ok

This is the standard response to successful requests – this is the status code you usually want and expect.

When the request is GET (asking for a resource), feedback will include the resource. When the request is a POST (or other types), the response will contain a resource that describes or is the result of the action.

201 Created

The purpose of some requests is to create a new resource. When these are successfully completed, a 201 status is sent to indicate that a new resource has been created. It is commonly used in combination with the PUT request type.

202 Accepted

The request has been accepted, but no action has been taken. The request may or may not be processed.

203 Non-official information

The response includes the requested resources, but the resource can be obtained from another source, and can, therefore, be untrusted – the server is not vouchering for the resource’s validity or authenticity.

204 No Content

It is sent when the server has successfully processed the request but does not need to return any content. Mostly, this happens as a result of a DELETE request. When a 204 request is sent, the user-agent (client or web browser) should not specifically change its approach.

For example, if the request was sent via a form on a page, the response should not cause the form to be refreshed or for the browser to move to another page – a request in the user to change the existing content New content is not opinion.

205 Reset content

The response to 205 is similar to that of 204, but the user agent is assumed to refer back to the current document’s default state.

206 Partial Content

It is used when the server is sending only a portion of the requested resource because the user only requests to receive a portion of the resource.

This occurs when a resource is sufficiently large, or the connection is incredibly large, that the user agent wants to split the resource into a series of “chunked” requests.

207 Multi-status

Like 103, it is only used with WebDAV.

A WebDAV request can have multiple subcategories, each with its own status and response. The 207 status indicates that the response body will contain an XML document detailing the status and responses of each sub-request.

208 Already reported

Another WebDAV-only status code. This means that the members of the DAV bindings have already been enumerated in the previous reply to the current request, and are not included again.

226 IM is used

The server has an entire request for the resource, and the feedback is a representation of the conclusion of one or more instance-manipulations applied to the current instance.

3xx HTTP status codes – Redirection

The range of the 3xx (redirection) status code indicates that further action must be taken by the user agent to complete the request. These error codes are shown when you request an address and are sent elsewhere. There are a set of different types of redirects:

  • 300 multiple choices
  • 301 – Moved Permanently;
  • 302 – Found;
  • 304 – Not Modified;
  • 305 – Use Proxy;
  • 306 unused
  • 307 – Temporary Redirect
  • 308 permanent redirects

300 Multiple choices

The request has more than one possible response. The user-agent or user should select one of them. (There is no standardized way to select one of the responses, but HTML links are recommended for prospects so that the user can pick it up.)

301 Moved Permanently

The URL of the requested resource has been permanently changed. A new URL must be provided in the response.

302 Found

This response code means that the URI of the requested resource has been temporarily changed. URI can have new changes in the future. Therefore, the corresponding URI should be used by the customer in future requests.

303 View other

The server sent this response to direct the client to receive the requested resource on another URI with a GET request.

304 Not modified

It is used for caching purposes. This tells the client that the response has not been modified, so the client can continue to use the same cached version of the response.

305 Use proxy

A previous version of the HTTP specification has been defined to indicate that a requested response must be accessed by a proxy. It has been removed due to security concerns regarding the in-band configuration of the proxy.

306 Unused

306 unused response code is no protracted used, it is just reserved. This was used in the previous version of the HTTP / 1.1 specification.

307 Temporary redirect

The server sends this response to the client to direct it to another URI to receive the requested resource by the same method that was used in the prior request. It has the same semantics as the 302found HTTP response code, with the exception that the HTTP method used by the user agent should not change: if a post was used in the first request, then a post was used in the second request needed.

308 Permanent redirects

This means that the resource is now permanently located on another URI, location: HTTP response header. It has the same semantics as the 301-powered permanently HTTP response code, with the exception that the HTTP method used by the user agent should not change: if a POST was used in the first request, then a request in the second request POST must be used.

4xx HTTP status codes – Client error

When you do not receive HTTP error 404, the web server could not find the requested page, file, or any other resource. HTTP 404 errors indicate that a network connection was successfully made between the client and the server. This error usually appears when people manually enter an incorrect URL into a browser. Or the web server administrator deletes the file without redirecting an address to a valid and accurate new location. You should verify the URL to solve this problem or wait for the web administrator to fix it. The class of 4xx (client error) status code indicates that the client has been erased.

  • 400- Bad Request
  • 401- Unauthorized
  • 402 -Payment Required
  • 403 -Forbidden
  • 404 -Not Found
  • 405 -Method Not Allowed
  • 406 -Not Acceptable
  • 407 -Proxy Authentication Required
  • 408 -Request Timeout
  • 409 -Conflict
  • 410- Gone
  • 411 -Length Required
  • 412 -Precondition Failed
  • 413 -Payload Too Large
  • 414 -Request-URI Too Long
  • 415 -Unsupported Media Type
  • 416 -Requested Range Not Satisfiable
  • 417 -Expectations Failed
  • 418 -I’m a teapot
  • 421 -Misdirected Request
  • 422 -Unprocessable Entity
  • 423 -Locked
  • 424 -Failed Dependency
  • 426 -Upgrade Required
  • 428 -Precondition Required
  • 429 -Too Many Requests
  • 431 -Request Header Fields Too Large
  • 440 Login Timeout (Microsoft)
  • 444 -Connection Closed Without Response
  • 444 no response (Nginx)
  • 449 Try again with Microsoft
  • 450 blocked by Windows Parental Control (Microsoft)
  • 451 Unavailable for legal reasons (draft)
  • 451 Redirect (Microsoft)
  • 494 request header too large (Nginx)
  • 499 Client Closed Request

400 Bad Request

The server could not understand the request due to malformed syntax. The customer will not repeat the request without modifications

401 Unauthorized

Unauthorized “or” Authorization Required. “This is returned by the server when the target resource lacks valid authentication credentials.  Namely, the customer must authenticate himself to receive the requested response.

402 Payment required

This response code is reserved for future use. The initial purpose of creating this code was using it for digital payment systems, however, this status code is rarely used and no standard conventions exist.

403 Forbidden

This code is returned when a user tries to access something for which they are not allowed i.e. they are unauthorized, so the server declines to respond appropriately. Unlike a 401, the client’s identity is known to the server.

404 Not Found

The server cannot find the requested resource. In a browser, this means that the URL is not recognized. In an API, this can also mean that the deadline point is valid but the resource itself does not exist. Servers can also send this response instead of 403 to hide the existence of a resource from unauthorized clients. This response code is probably best known for being consistent across the web.

405 Method not allowed

It is generated when the hosting server (root server) supports the receive method, but the target resource is not. For example, an API may deny DELETE-ing from processing. GET and HEAD, the two mandatory methods should never be disabled and should not return this error code.

406 Is not acceptable

This response is sent when the webserver, after interacting with the content operated by the server, finds no content following the criteria given by the user agent.

407 Proxy Authentication Required

This is similar to a 401, but authentication needs to be done by proxy.

408 Request timeout

This response is sent on inactive connections by some servers, without any previous request by the client. This means that the server would like to close this unused connection. Since some browsers such as Chrome, Firefox 27+ or IE9 use this response very much, use the HTTP pre-connection mechanism to speed up surfing. Also, note that some servers only close the connection without sending this message.

409 Conflict

This response is sent when a request hits the current state of the server.

410 Gone

This response will be sent when the requested content has been permanently removed from the server with no forwarding address. Customers are expected to remove their cache and resource links. The HTTP specification intends to use this status code for “limited time, promotional services”. The API should not feel compelled to point to resources that have been removed with this status code.

411 Length required

The server refuses to obtain the request without a defined content-length. The client repeats the MAY request if it adds a valid content-length header field that contains the length of the message-body in the request message.

412 Assumption failed

The client has indicated preconditions in its headers that the server does not meet.

413 Payload too large

The request entity is larger than the limits defined by a server; The server may close the connection or return the Retry-After Header field.

414 URI too long

The URI requested by the client is longer than the server is ready to interpret.

415 Unsupported media type

The 415 error response indicates that the API is not capable of processing the client’s supplied media type, as indicated by the content-type request header. For example, a client request consists of data formatted as application / xml will receive 415 responses if the API is only ready to process data formatted as application / json.

416 Requested range not satisfactory

The range specified by the category header field in the request cannot be met; It is possible that the range is out of shape for the data of the target URI.

417 Hope failed

This response code means that the expectation cannot be met by the server, as indicated by the request request-header field.

418 I’m a teapot

The server denies attempting to brew coffee with a teapot.

421 Incorrect requested

The request was directed to a server that is not capable of generating a response. It can be sent by a server that is not configured to produce feedback to a combination of schemes and authorizations that are included in the request URI.

422 Unprocessed Unit (WebDAV)

The request was well made, but could not be complied with due to semantic errors.

423 lock (WebDAV)

The resource being accessed is closed.

424 Failed Dependency (WebDAV)

The request failed because the previous request failed.

425 Very Soon

It indicates that the server is not ready to take the risk to process a request that can be resumed.

426 Upgrade Required

The server refuses to request using the current protocol but may be willing to do so after upgrading the client to a different protocol. The client must switch to a different protocol, as specified in the upgrade header.

428 Precondition Required

The root server requires the request to be conditional. With the intention of preventing the ‘lost update’ problem, where a client retrieves the status of a resource, modifies it, and sends it back to the server when a third party has meanwhile modified the status on the server, Which leads to opposition.

429 Too Many Requests

The user has sent too many requests in a given time (“rate limiting”).

431 Request Header Fields too large

The server is not ready to process the request because its header fields are too large. A request may be resubmitted after decreasing the size of the request header field.

440 Login Timeout (Microsoft)

Not a part of the standard, but used by Microsoft. This indicates that the session has ended.

444 No response (Nginx)

It is not part of the standard. Not really a reaction condition as used.

It was introduced by Nginx for their server logs to indicate when the server did not send a response and closed the connection, usually in the event of a suspected malware attack.

449 Try again with Microsoft

Not a part of the standard, but used by Microsoft.

The request must be withdrawn after taking the action described in the response.

450 Blocked by Windows Parental Control (Microsoft)

Not a part of the standard, but used by Microsoft.

450 blocked error is given when Windows Parental Controls are turned on and is blocking access to the given webpage. The error arises from the WPC application, not the server.

451 Unavailable for legal reasons (draft)

This condition is not yet part of the standard but is available as a format.

It is used when a resource cannot be provided due to censorship or other legal reasons. Code number Fahrenheit 451 is a reference to the book.

451 Redirect (Microsoft)

Not a part of the standard, but used by Microsoft. Exchange occurs in ActiveSync if either there is a more efficient server to use or the server cannot access users’ mailboxes.

494 Request Header too large (Nginx)

Not a part of the standard, but was used by Nginx. Now deprecated.

This has the same meaning as the 431 but was introduced before the status was a part of the HTTP standard.

 495 Certificate Error (Nginx)

It is not part of the standard. The response status is not actually as used, but appears in the Nginx log when the SSL client certificate error occurs.

496 No Certificate (Nginx)

It is not part of the standard. Not exactly a response condition as used, but when the client does not provide a certificate, Nagnex appears in the log.

497 HTTP to HTTPS (Nginx)

It is not part of the standard. Not exactly the status of the response as used, but the plain HTTP request appears in the Nginx log when sent over the HTTPS port.

498 Token Expired / Invalid (Esri)

Returned by ArcGIS for the server. A code of 498 announces an expired or otherwise invalid token.

499 Client Closed Request (Nginx)

Is not part of the standard. There is not really a response status as used, but when the client is still processing their request, the server is unable to send the status code back, when it appears in the Nginx log.

499 Token Required (Esri)

Returned by ArcGIS for the server. The 499 code states that a token is required (if no token was deposited).

5xx HTTP Status Codes –  Server Error

5xx error codes are server error codes, which means that they return when there is a problem on the server instead of the client. Whenever possible, the server should return a response unit that describes the error to the client. User agents (web browsers) should show this information to the user.

  • 500 Internal Server Error
  • 501 Not Implemented
  • 502 Bad Gateway
  • 503 Service Unavailable
  • 504 Gateway Timeout
  • 505 HTTP Version Not Supported
  • 506 Variant Also Negotiates
  • 507 Insufficient Storage
  • 508 Loop Detected
  • 509 Bandwidth Limit (Apache)
  • 510 Not Extended
  • 511 Network Authentication Required
  • 520 unknown error
  • 598 Network Timeout Error (Microsoft)
  • 599 Network Connect Timeout Error

500 Internal Server Error

This is the most common server error and is issued by the web server when something goes erratic.

Typically, any changes to a website or server configuration must be thoroughly tested to ensure that the 500: internal server error does not occur.

When a 500 error occurs, looking at the server log often can help determine where the error is coming from. This can often be as simple as typographic errors in the .htaccess file.

501 Not implemented

When the HTTP request method (such as PUT or DELETE) is returned, in some cases the API method is not yet implemented. It is used for the Web Services API. Typically, the implication of the 501 error is that the request method is planned for future implementations.

502 Bad Gateway

This code appears when the server is acting as a proxy or gateway and receives an invalid response from the upstream server.

503 Service Unavailable

The server is currently unavailable. For illustration, because it is overloaded or down for maintenance. The implication of the 503 error is that the outage is temporary.

504 Gateway Timeout

This error occurs when the server is acting as a proxy or gateway and does not receive a response from the upstream server within the allotted time.

505 HTTP version not supported

This error means that the server does not support the HTTP protocol version used in the request.

506 Variant also talks

To understand the 506 error, you have to understand transparent content interaction. With content negotiation, a single URL can distribute the same resource or information in multiple formats. For example, the same image can be encoded as JPEG and GIF.

A 506 error occurs when this material causes a negotiation loop. For example, the requested resource A has two differences – B and C. They both have A as a type.

To put it in more technical language, the specification describes a 506 error:

The transparent content interaction for the request results in a circular context.

507 Insufficient storage (WebDAV; RFC 4918)

This condition is used as the WebDAV protocol. This is given when the server is unable to store the representation required to fulfill the request.

508 Loop detected

The server encountered an infinite loop when attempting to service the requested resource.

509 Bandwidth Limit (Apache)

HTTP is not part of the standard but is offered and used by Apache. It is issued when the server bandwidth limit has been exceeded.

510 Not extended

This error means that further extension of the request is required to complete the server.

511 Network Authentication Required

The 511 error is returned when the client needs to authenticate to gain network access.

This condition is intended for use when proximal interception used to control access to the network – that the use of “captive portals” requires login or terms of service before providing access to the Internet via a WiFi portal it occurs.

(If you have ever tried to get online at an airport or hotel, you will face a 511 error.)

520 Unknown error

This error code is not part of the HTTP standard but is used by many large providers of server infrastructure, such as Cloudflare. This is used as a common “catch-all” error for unknown problems that do not result in a request being filled.

598 Network Timeout Error (Microsoft)

This error code is not part of the HTTP standard but is used by the Microsoft HTTP Proxy to signal the network time read behind the client in front of the proxy.

599 Network Connect Timeout Error (Microsoft)

This error code is not part of the HTTP standard but is used by the Microsoft HTTP proxy to indicate a network connect timeout from the proxy to the client.

Final Thought – HTTP Status Codes

The list above mentioned that you are likely to run most HTTP status codes regularly. However, there are several additional codes that you may bump into from time to time.

Despite good website maintenance, 404 errors cannot always be avoided. It is therefore recommended to manually integrate your notifications instead of using the server’s automatically generated HTML error pages. The configuration file .htaccess enables users to complete this process. Optional 404 messages are compatible with the design of the website and at the top of the status code, often provide additional information, comparable product pages, or an overview of the information on offer.

A good-maintenance website has a lot of functionality and moving parts that can be expensive due to the increased amount of work. So if you want to save some money and time, find a good Ready-Made Website that fits your needs. The Ready-Made website is a widely used website. Which customized by Delegate Studio according to the requirements of the user like as Elementor Pro Website Builder, On-Page SEO, and 24/7 Support. ReadyMade Website also includes Top-level Domain, Managed Hosting, SSL certificate.

Sharing is caring!

By Andrew Scott

Andrew Scott is a creative freelance wirter from Canada. He has been writing about WordPress and written multi fold blogs and articles that present strategic approach, and marketing tips for online businesses.

Leave a Reply

Your email address will not be published. Required fields are marked *