0%

常见的 HTTP 状态码

了解常见的 HTTP 状态码。

参考:

HTTP 状态码

根据实际状态可以划分为:

  • 信息(Informational)
  • 成功(Success)
  • 重定向(Redirection)
  • 客户端错误(Client Error)
  • 服务端错误(Server Error)

标记为最常见状态码

信息状态- - 1xx

状态码 返回信息 描述
100 Continue 初始的请求已经接受,客户端应当继续发送请求的其余部分,如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。
101 Switching Protocols 服务器将遵从客户端的请求转换到另外一种协议
102 Processing (WebDAV) 由 WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执行。

成功状态- - 2xx

状态码 返回信息 描述
200 OK 一切正常,对 GET 和 POST 请求的应答文档跟在后面
201 Created 服务器已经创建了文档,Location 头给出了它的URL。
202 Accepted 已经接受请求,但处理尚未完成。
203 Non-Authoritative Information 文档已经正常地返回,但一些应答头可能不正确,因为使用的是文档的拷贝
204 No Content 没有新文档,浏览器应该继续显示原来的文档。如果用户定期地刷新页面,而 Servlet 可以确定用户文档足够新,这个状态代码是很有用的
205 Reset Content 没有新的内容,但浏览器应该重置它所显示的内容。用来强制浏览器清除表单输入内容
206 Partial Content 客户发送了一个带有 Range 头的 GET 请求,服务器完成了它
207 Multi-Status (WebDAV) 由 WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是一个 XML 消息,并且可能依照之前子请求数量的不同,包含一系列独立的响应代码。
208 Already Reported (WebDAV)
226 IM Used

重定向状态- - 3xx

状态码 返回信息 描述
300 Multiple Choices 客户请求的文档可以在多个位置找到,这些位置已经在返回的文档内列出。如果服务器要提出优先选择,则应该在 Location 应答头指明。
301 Moved Permanently 客户请求的文档在其他地方,新的 URL 在 Location 头中给出,浏览器应该自动地访问新的 URL。
302 Found 类似于 301,但新的URL应该被视为临时性的替代,而不是永久性的。
303 See Other 类似于 301/302,不同之处在于,如果原来的请求是 POST,Location 头指定的重定向目标文档应该通过 GET 提取
304 Not Modified 客户端有缓冲的文档并发出了一个条件性的请求(一般是提供 If-Modified-Since 头表示客户只想比指定日期更新的文档)。服务器告诉客户, 原来缓冲的文档还可以继续使用。
305 Use Proxy 客户请求的文档应该通过 Location 头所指明的代理服务器提取
307 Temporary Redirect 和302(Found)相同。许多浏览器会错误地响应302应答进行重定向,即使原来的请求是 POST,即使它实际上只能在 POST 请求的应答是 303 时 才能重定向。由于这个原因,HTTP 1.1 新增了 307,以便更加清楚的区分几个状态代码: 当出现 303 应答时,浏览器可以跟随重定向的 GET 和 POST 请求;如果是 307 应答,则浏览器只能跟随对 GET 请求的重定向。
308 Permanent Redirect (experimental) 该状态码是为了将来可能的需求而预留的。

客户端错误状态- - 4xx

状态码 返回信息 描述
400 Bad Request 请求出现re语法错误。
401 Unauthorized 客户端试图未经授权访问受密码保护的页面。应答中会包含一个 WWW-Authenticate 头,浏览器据此显示用户名字/密码对话框,然后在填写合适的 Authorization 头后再次发出请求。
402 Payment Required 该状态码是为了将来可能的需求而预留的。
403 Forbidden 资源不可用。
404 Not Found 无法找到指定位置的资源
405 Method Not Allowed 请求方法(GET、POST、HEAD、Delete、PUT、TRACE等)对指定的资源不适用。
406 Not Acceptable 指定的资源已经找到,但它的MIME类型和客户在 Accpet 头中所指定的不兼容
407 Proxy Authentication Required 类似于 401,表示客户必须先经过代理服务器的授权。
408 Request Timeout 在服务器许可的等待时间内,客户一直没有发出任何请求。客户可以在以后重复同一请求。
409 Conflict 通常和 PUT 请求有关。由于请求和资源的当前状态相冲突,因此请求不能成功。
410 Gone 所请求的文档已经不再可用,而且服务器不知道应该重定向到哪一个地址。它和 404 的不同在于,返回 407 表示文档永久地离开了指定的位置, 而 404 表示由于未知的原因文档不可用。
411 Length Required 服务器不能处理请求,除非客户发送一个 Content-Length 头。
412 Precondition Failed 请求头中指定的一些前提条件失败
413 Request Entity Too Large 目标文档的大小超过服务器当前愿意处理的大小。如果服务器认为自己能够稍后再处理该请求,则应该提供一个 Retry-After 头
414 Request URI Too Long URI太长
415 Unsupported Media Type 对于当前请求的方法和所请求的资源,请求中提交的实体并不是服务器中所支持的格式,因此请求被拒绝。
416 Requested Range Not Satisfiable 服务器不能满足客户在请求中指定的 Range 头
417 Expectation Failed 在请求头 Expect 中指定的预期内容无法被服务器满足,或者这个服务器是一个代理服务器,它有明显的证据证明在当前路由的下一个节点上, Expect 的内容无法被满足。
418 I'm a teapot (RFC 2324)
420 Enhance Your Calm (Twitter)
422 Unprocessable Entity (WebDAV) 从当前客户端所在的IP地址到服务器的连接数超过了服务器许可的最大范围。通常,这里的IP地址指的是从服务器上看到的客户端地址 (比如用户的网关或者代理服务器地址)。在这种情况下,连接数的计算可能涉及到不止一个终端用户。
423 Locked (WebDAV) 请求格式正确,但是由于含有语义错误,无法响应。(RFC 4918 WebDAV)423 Locked 当前资源被锁定。(RFC 4918 WebDAV)
424 Failed Dependency (WebDAV) 由于之前的某个请求发生的错误,导致当前请求失败,例如 PROPPATCH。(RFC 4918 WebDAV)
425 Reserved for WebDAV 在 WebDav Advanced Collections 草案中定义,但是未出现在《WebDAV 顺序集协议》(RFC 3658)中。
426 Upgrade Required 客户端应当切换到TLS/1.0。(RFC 2817)
428 Precondition Required
429 Too Many Requests
431 Request Header Fields Too Large
444 No Response (Nginx)
449 Retry With (Microsoft) 由微软扩展,代表请求应当在执行完适当的操作后进行重试。
450 Blocked by Windows Parental Controls (Microsoft)
451 Unavailable For Legal Reasons
499 Client Closed Request (Nginx)

服务端错误状态- - 5xx

状态码 返回信息 描述
500 Internal Server Error 服务器遇到了意料不到的情况,不能完成客户的请求
501 Not Implemented 服务器不支持实现请求所需要的功能。例如,客户发出了一个服务器不支持的PUT请求
502 Bad Gateway 服务器作为网关或者代理时,为了完成请求访问下一个服务器,但该服务器返回了非法的应答
503 Service Unavailable 服务器由于维护或者负载过重未能应答。例如,Servlet可能在数据库连接池已满的情况下返回503。服务器返回503时可以提供一个Retry-After头
504 Gateway Timeout 由作为代理或网关的服务器使用,表示不能及时地从远程服务器获得应答
505 HTTP Version Not Supported 服务器不支持请求中所指明的HTTP版本
506 Variant Also Negotiates (Experimental) 由《透明内容协商协议》(RFC 2295)扩展,代表服务器存在内部配置错误:被请求的协商变元资源被配置为在透明内容协商中使用自己, 因此在一个协商处理中不是一个合适的重点。
507 Insufficient Storage (WebDAV) 服务器无法存储完成请求所必须的内容。这个状况被认为是临时的。WebDAV (RFC 4918)
508 Loop Detected (WebDAV)
509 Bandwidth Limit Exceeded (Apache) 服务器达到带宽限制。这不是一个官方的状态码,但是仍被广泛使用。
510 Not Extended 获取资源所需要的策略并没有没满足。(RFC 2774)
511 Network Authentication Required
598 Network read timeout error
599 Network connect timeout error