What are HTTP status codes?

An HTTP status code is a server response to a browser’s 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: the HTTP status code.

These status codes are the Internet equivalent of a conversation between your browser and the server. They communicate whether things between the two are A-okay, touch-and-go, or whether something is wrong. The first digit of each three-digit status code begins with one of five numbers, 1 through 5; you may see this expressed as 1xx or 5xx to indicate status codes in that range. Each of those ranges encompasses a different class of server response.

Common HTTP status code classes:

  • 1xxs – Informational responses: The server is thinking through the request.
  • 2xxs – Success! The request was successfully completed and the server gave the browser the expected response.
  • 3xxs – Redirection: You got redirected somewhere else. The request was received, but there’s a redirect of some kind.
  • 4xxs – Client errors: Page not found. The site or page couldn’t be reached. (The request was made, but the page isn’t valid — this is an error on the website’s side of the conversation and often appears when a page doesn’t exist on the site.)
  • 5xxs – Server errors: Failure. A valid request was made by the client but the server failed to complete the request.
1xx: HTTP Inform­ational Codes
Code Description
100 Continue
101 Switching Protocols
102 Processing WebDAV
103 Checkpoint draft POST PUT
122 Reques­t-URI too long IE7
2xx: HTTP Successful Codes
Code Description
200 OK
201 Created
202 Accepted
203 Non-Au­tho­rit­ative Inform­ation 1.1
204 No Content
205 Reset Content
206 Partial Content
207 Multi-­Status WebDAV 4918
208 Already Reported WebDAV 5842
226 IM Used 3229 GET
3xx: HTTP Redire­ction Codes
Code Description
300 Multiple Choices
301 Moved Perman­ently
302 Found
303 See Other 1.1
304 Not Modified
305 Use Proxy 1.1
306 Switch Proxy unused
307 Temporary Redirect 1.1
308 Permanent Redirect 7538

307 and 308 are similar to 302 and 301, but the new request method after redirect must be the same, as on the initial request.

4xx: HTTP Client Error Code
Code Description
400 Bad Request
401 Unauth­orized
402 Payment Required res
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authen­tic­ation Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precon­dition Failed
413 Request Entity Too Large
414 Reques­t-URI Too Long
415 Unsupp­orted Media Type
416 Requested Range Not Satisf­iable
417 Expect­ation Failed
418 I’m a teapot 2324
422 Unproc­essable Entity WebDAV 4918
423 Locked WebDAV 4918
424 Failed Dependency WebDAV 4918
425 Unordered Collection 3648
426 Upgrade Required 2817
428 Precon­dition Required draft
429 Too Many Requests draft
431 Request Header Fields Too Large draft
444 No Response nginx
449 Retry With MS
450 Blocked By Windows Parental Controls MS
451 Unavai­lable For Legal Reasons draft
499 Client Closed Request nginx
5xx: HTTP Server Error Codes
Code Description
500 Internal Server Error
501 Not Implem­ented
502 Bad Gateway
503 Service Unavai­lable
504 Gateway Timeout
505 HTTP Version Not Supported
506 Variant Also Negotiates 2295
507 Insuff­icient Storage WebDAV 4918
508 Loop Detected WebDAV 5842
509 Bandwidth Limit Exceeded nostd
510 Not Extended 2774
511 Network Authen­tic­ation Required draft
598 Network read timeout error nostd
599 Network connect timeout error nostd

HTTP Code Comments

WebDAV WebDAV extension
1.1 HTTP/1.1
GET, POST, PUT, POST For these methods only
IE IE extension
MS MS extension
nginx nginx extension
2518, 2817, 2295, 2774, 3229, 4918, 5842 RFC number
draft Proposed draft
nostd Non standard extension
res Reserved for future use
unused No more in use, deprecated

Wikipedia was used to produce all HTTP status codes content: http:/­/en.wi­kip­edi­a.o­rg/­wik­i/H­TTP­_status

Leave a Comment