HTTP 1.1中的状态码。这些状态码被分为五大类:
100-199 用于指定客户端应相应的某些动作;
200-299 用于表示请求成功;
300-399 用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息;
400-499 用于指出客户端的错误;
500-599 用于支持服务器错误;
具体状态码含义:
100 这是指客户端询问是否可以在后续的请求中发送附件。
101 指服务器将按照其上的头信息变为一个不同的协议。
200 一切正常,成功完成所有请求。一般用于相应GET和POST请求。这个状态码对servlet是缺省的;如果没有调用setStatus方法的话,就会得到200。
201 表示服务器在请求的响应中建立了新文档;应在定位头信息中给出它的URL。
202 告诉客户端请求正在被执行,但还没有处理完。
203 表示文档被正常的返回,但是由于正在使用的是文档副本所以某些响应头信息可能不正确。
204 在并没有新文档的情况下,确保浏览器继续显示先前的文档。这个状态码对于用户周期性的重载某一页非常有用,并且你可以确定先前的页面是否已经更新。
205 虽然没有新文档但浏览器要重置文档显示。这个状态码用于强迫浏览器清除表单域。
206 是在服务器完成了一个包含Range头信息的局部请求时被发送的。
300 表示被请求的文档可以在多个地方找到,并将在返回的文档中列出来。如果服务器有首选设置,首选项将会被列于定位响应头信息中。
301 指所请求的文档在别的地方;文档新的URL会在定位响应头信息中给出。浏览器会自动连接到新的URL。
302 与301有些类似,只是定位头信息中所给的URL应被理解为临时交换地址而不是永久的。
303 和 301、302 相似,只是如果最初的请求是 POST,那么新文档(在定位头信息中给出)药用 GET 找回。
304 是指缓冲的版本已经被更新并且客户端应刷新文档。
305 表示所请求的文档要通过定位头信息中的代理服务器获得。
307 浏览器处理307状态的规则与302相同。307状态被加入到 HTTP 1.1中是由于许多浏览器在收到302响应时即使是原始消息为POST的情况下仍然执行了错误的转向。只有在收到303响应时才假定浏览器会在POST请求时重定向。添加这个新的状态码的目的很明确:在响应为303时按照GET和POST请求转向;而在307响应时则按照GET请求转向而不是POST请求。
400 (Bad Request/错误请求)
400 (SC_BAD_REQUEST)指出客户端请求中的语法错误。
401 表示客户端在授权头信息中没有有效的身份信息时访问受到密码保护的页面。
403 除非拥有授权否则服务器拒绝提供所请求的资源。
404 告诉客户端所给的地址无法找到任何资源。
405 指出请求方法(GET, POST, HEAD, PUT, DELETE, 等)对某些特定的资源不允许使用。
406 表示请求资源的MIME类型与客户端中Accept头信息中指定的类型不一致。
407 用于代理服务器。该状态指出客户端必须通过代理服务器的认证。
408 是指请求超时,服务端等待客户端发送请求的时间过长。
409 (Conflict/冲突) 用于试图上传版本不正确的文件时。
410 告诉客户端所请求的文档已经不存在并且没有更新的地址。 410是在指导文档已被移走的情况下使用,而404则用于未知原因的无法访问。
411 (Length Required/需要数据长度) 表示服务器不能处理请求(假设是有附件的POST请求),除非客户端发送Content-Length头信息指出发送给服务器的数据的大小。
412 指出请求头信息中的某些先决条件是错误的。
413 告诉客户端现在所请求的文档比服务器现在想要处理的要大。如果服务器认为能够过一段时间处理,则会包含一个Retry-After的响应头信息。
414 用于在URI过长的情况时。这里所指的“URI”是指URL中主机、域名及端口号之后的内容。
415 请求所带的附件的格式类型服务器不知道如何处理。
416 表示客户端包含了一个服务器无法满足的Range头信息的请求。
417 服务器也会用该状态(417)告诉浏览器服务器不接收客户端发送的附件或用100 状态告诉客户端可以继续发送附件。
500 是常用的“服务器错误”状态。该状态经常由CGI程序引起也可能(但愿不会如此!)由无法正常运行的或返回头信息格式不正确的servlet引起。
501 告诉客户端服务器不支持请求中要求的功能。
502 充当代理或网关的服务器;该状态指出接收服务器接收到远端服务器的错误响应。
503 表示服务器由于在维护或已经超载而无法响应。
504 指出接收服务器没有从远端服务器得到及时的响应。
505 服务器并不支持在请求中所标明 HTTP 版本。