HTTP status codes

The HTTP protocol defines HTTP status codes that a web server sends in response to requests made by a web browser.

There are several types of status codes. Only the last two types indicate an error message. The web specification groups them as follows:

  • 1xx – Informational
  • 2xx – Successful
  • 3xx – Redirection
  • 4xx – Client error
  • 5xx – Server error

The most common client error codes are 404 (Not Found), 403 (Forbidden), and 400 (Bad Request).
The most common server error code is 500 (Internal Server Error).

A full list of HTTP status codes is available in the official HTTP Status Codes registry maintained by IANA.

Common HTTP status codes explained

100 Continue

This status code does not indicate an error. It confirms that everything is OK and the request can continue.

200 OK

When the web server successfully processes a request from a browser, it responds with status code 200 OK.

201 Created

The server has successfully created a new resource.

202 Accepted

The request has been accepted, but processing has not yet completed. The action will continue asynchronously.

204 No Content

The request was successfully processed, but the requested resource has no content. The response body is empty.

206 Partial Content

The request was interrupted before completion. This message is usually returned when a user cancels the download of a file before it finishes.

300 Multiple Choices

The request is unclear and requires clarification about which resource the client wants.

301 Moved Permanently and 302 Found

  • 301 indicates that the resource has been permanently moved. From now on, clients should use only the new URL.
  • 302 indicates that the resource has been temporarily moved. Clients should continue using the original URL in the future.

Related article: How to fix “Error 301 moved permanently”

Related article: What is the difference between HTTP 301 and HTTP 302?

304 Not Modified

The message indicates that the client’s cached version of the resource is still valid, so the server does not need to send it again.

400 Bad Request

The server cannot understand the request due to invalid syntax. The client should modify the request before retrying.

401 Unauthorized

Authentication is required to access the resource. The message indicates that you do not have permission to access the requested information. Contact the server administrator if you believe access should be granted.

403 Forbidden

Access is forbidden. The server understands the request but refuses to fulfill it. Possible reasons include:

  • attempting to access a directory without an index file such as index.html, index.php, etc.
  • entering an incorrect password for protected resources
  • attempting to access an SSL-protected page
  • access blocked by IP address restrictions

404 Not Found

The server cannot find the requested resource. This may be caused by an incorrect URL or a resource that no longer exists. If the error persists, contact the website administrator.

Related article: What is an HTTP 404 error?

405 Method Not Allowed

The server does not allow the HTTP method used for this resource.

406 Not Acceptable

The request is not acceptable according to the server’s criteria.

407 Proxy Authentication Required

Authentication through a proxy server is required to access the requested resource.

408 Request Time-Out

The request has timed out.

409 Conflict

A conflict exists that prevents access to the requested resource.

410 Gone

The requested resource is no longer available on the server and there is no forwarding address.

413 Request Entity Too Large

The request payload is too large.

414 Request-URL Too Large

The request URL is too long.

415 Unsupported Media Type

The server does not support the media type of the requested resource.

500 Internal Server Error

The server cannot process the request due to an internal error. You should try again later or contact the server administrator.

501 Not Implemented

The request requires functionality that is not supported or installed on the server.

502 Bad Gateway

While acting as a gateway or proxy, the server received an invalid response from the upstream server.

503 Service Unavailable

The request cannot be processed temporarily, most often due to exhausted server resources.

504 Gateway Time-Out

The connection to the upstream content server failed. This often occurs when a proxy, CDN, or caching service sits between the browser and the origin server and the origin server does not respond within the expected time limit.

505 HTTP Version Not Supported

The server does not support the HTTP version used in the request.

Why this matter?

Knowing how to interpret a http status code helps you understand what happens behind the scenes when a website loads or fails to load. These codes reveal whether the issue comes from a missing resource, incorrect access permissions, a redirection rule, or a server-side failure. When you rely on status codes instead of assumptions, you can troubleshoot faster and communicate issues more clearly with hosting providers or developers.

JetHost Experts Tip

When diagnosing an http status code, test the request both with and without caching or proxy services enabled. CDNs and security layers can return their own responses, which may differ from the origin server’s status code.

Hosting with cPanel JetHost

Need help?

If you see an unfamiliar http status code or the same response appears repeatedly, start by checking the request source and the affected URL. Review recent website or server changes, including redirects, access rules, and caching layers.

If the cause is not clear, collect the exact status code, the requested URL, and the time the issue occurred. This information helps support teams or administrators identify the problem faster and provide an accurate solution.