分类
从HTTP服务器状态代码分析‖
由空行终止。HTTP/1.0中没
合法回应。实际上,它们
有定义任何1xx的状态代码,所
主要用于实验用途,这已经超出
以它们不是对HTTP/1.0请求的
本文档的范围。
| 1.2 成功2xx(Successful 2xx) |
| 表示客户端请求被成功接收、理解、接受。 |
| 200 OK |
| 请求成功。回应的信息依赖于请求所使用的方法,如下: |
| GET 要请求的资源已经放在回应的实体中了。 |
| HEAD 没有实体主体,回应中只包括标题信息。 |
| POST 实体(描述或包含操作的结果)。 |
| 201 Created |
| 请求完成,结果是创建 应在发出该状态代码前创建 回应主体中给出提示,否则 | 了新资源。新创建资源的URI可 该资源。如果该操作不能立即完 ,服务器端应回应202(可被接 | 在回应的实体中得到。原始服务器 成,服务器必须在该资源可用时在 受)。 |
| 在本文定义的方法,只有POST可以创建资源。 |
| 202 Accepted |
| 请求被接受,但处理尚 ,在这种情鱿拢挥邪旆?br> | 未完成。请求可能不一定会最终 在异步操作中重新发送状态代码 | 完成,有可能被处理过程随时中断 。 |
| 202回应是没有义务的,这样做的目 结束,就可以响应其它过程的请求(象每 | 的是允许服务器不必等到用户代理和服务器间的连接 天运行一次的,基于批处理的过程)。 |
| 在某些回应中返回的实体中包括当前 实现的评估信息。 | 请求的状态指示、状态监视器指针或用户对请求能否 |
| 204 No Content |
| 服务器端已经实现了请 新自身的文档视图。该回应 语句的输入及其它操作。该 用户代理激活视图中的文档 | 求,但是没有返回新的信息。如 主要是为了在不影响用户代理激 回应还可能包括新的、以实体标 所使用。 | 果客户是用户代理,则勿需为此更 活文档视图的前提下,进行script 题形式表示的元信息,它可被当前 |
| 1.3 重定向(Redirection 3xx) |
| 该类状态码表示用户代理要想完成请 的请求是GET或HEAD时,才可由用户代理 要对请求进行5次以上的重定向操作,这 | 求,还需要发出进一步的操作。这些操作只有当后跟 来实现,而不用与用户进行交互。用户代理永远也不 样可能导致无限循环。 |
| 300 Multiple Choices |
| 该状态码不被HTTP/1.0 个可用的被请求资源。 | 的应用程序直接使用,只是做为 | 3xx类型回应的缺省解释。存在多 |
| 除非是HEAD请求,否则 用户代理来决定哪个是最适 | 回应的实体中必须包括这些资源 合的。 | 的字符列表及位置信息,由用户或 |
| 如果服务器有首选,它 理会根据此域的值来实现自 | 应将对应的URL信息存放在位置 动的重定向。 | 域(Location field)处,用户代 |
| 301 Moved Permanently |
| 请求到的资源都会分配一个永久的UR 辑链接功能的客户端会尽可能地根据服务 须由回应中的位置域指定。除非是HEAD请 包括对新URL超链接的简要描述。 | L,这样就可以在将来通过该URL来访问此资源。有编 器端传回的新链接而自动更新请求URI。 新的URL必 求,否则回应的实体主体 (Entity-Body)必须 |
| 如果用POST方法发出请求,而接收到 则用户代理不必自动重定向请求,因为这 | 301回应状态码。在这种情况下,除非用户确认,否 将导致改变已发出请求的环境。 |
| 注意:当在接收到301 将其改为GET请求。 | 状态码后而自动重定向POST请求 | 时,一些现存的用户代理会错误地 |
| 302 Moved Temporarily |
| 请求到的资源在一个不 请求URI来发出以后的请求 应的实体主体 (Entity-Bo | 同的URL处临时保存。因为重定 。新的URL必须由回应中的位置 dy)必须包括对新URL超链接的 | 向有时会被更改,客户端应继续用 域指定。除非是HEAD请求,否则回 简要描述。 |
| 如果用POST方法发出请求,而接收到 则用户代理不必自动重定向请求,因为这 | 302回应状态码。在这种情况下,除非用户确认,否 将导致改变已发出请求的环境。 |
| 注意:当在接收到302 将其改为GET请求。 | 状态码后而自动重定向POST请求 | 时,一些现存的用户代理会错误地 |
| 304 Not Modified |
| 如果客户端成功执行了 来就没有更新过,服务器应 只应包括一些相关信息,比 无关的修改。相关标题域的 生变化,缓存都应当对缓存 | 条件GET请求,而对应文件自If- 当回应此状态码,而不是将实体 如缓存管理器、与实体最近更新 例子有:日期、服务器、过期时 的实体进行更新。 | Modified-Since域所指定的日期以 主体发送给客户端。回应标题域中 (entity's Last-Modified)日期 间。每当304回应中给出的域值发 |
| 1.4 客户端错误(Client Error )4xx |
| 4xx类的状态码表示客户端发生错误 应当立即终止向服务器发送数据。除了回 器端都必须在回应的实体中包含错误状态 | 。如果客户端在收到4xx代码时请求还没有完成,它 应HEAD请求外,不论错误是临时的还是永久的,服务 的解释。这些状态码适用于任何请求方法。 |
| 注意:如果客户端正在 入连接之前收到回应包。如 发送一个复位包,清空客户 。 | 发送数据,服务器端的TCP实现 果客户端在关闭后仍旧向服务器 端尚未处理的输入缓冲区,以终 | 应当小心,以确保客户端在关闭输 发送数据,服务器会给客户 端 止HTTP应用程序的读取、解释活动 |
| 400 非法请求(Bad Request) |
| 如果请求的语法不对,服务器将无法 服务器重复发送该请求。 | 理解。客户端在对该请求做出更改之前,不应再次向 |
| 401 未授权(Unauthorized) |
| 请求需要用户授权。回 式请求资源。客户端应使用 了授权信任信息,那回应的 还是返回401状态代码,用 信息。HTTP访问授权会在11 | 应中的WWW-Authenticate标题域 合适的授权标题域(10.2节)来 401表示此授权被拒绝。如果用 户应当察看一下回应的实体,因 节中解释。 | (10.16节)应提示用户以授权方 重复该请求。如果请求中已经包括 户代理在多次尝试之后,回应一样 为在实体中会包括一些相关的动态 |
| 403 禁止(Forbidden) |
| 服务器理解请求,但是 请求。如果不是用HEAD请求 会将拒绝原因写在回应实体 其它的回应可用。 | 拒绝实现该请求。授权对此没有 方法,而且服务器端愿意公布请 中。该状态码一般用于服务器端 | 帮助,客户端应当停止重复发送此 求未被实现原因的前提下,服务器 不想公布请求被拒绝的细节或没有 |
| 404 没有找到(Not Found) |
| 服务器没有找到与请求URI相符的资 的。如果服务器不希望为客户端提供这方 | 源。404状态码并不指明状况是临时性的还是永久性 面的信息,还回应403(禁止)状态码。 |
| 1.5 服务器错误(Server Error )5xx |
| 回应代码以‘5’开头 果客户端在收到5xx状态码 HEAD请求外,服务器应当在 的。 | 的状态码表示服务器端发现自己 时,请求尚未完成,它应当立即 其回应实体中包括对错误情况的 | 出现错误,不能继续执行请求。如 停止向服务器发送荨3嘶赜?br>解释、并指明是临时性的还永久性 |
| 这类回应代码没有标题域,可适用于任何请求方法。 |
| 500 服务器内部错误(Internal Server Error) |
| 服务器碰到了意外情况,使其无法继续回应请求。 |
| 501 未实现(Not Implemented) |
| 服务器无法提供对请求中所要求功能 态代码,这意味着不能回应请求所要求的 | 的支持。如果服务器无法识别请求方法就会回应此状 任何资源。 |
| 502 非法网关(Bad Gateway) |
| 充当网关或代理的服务器从要发送请 | 求的上游(upstream)服务器收到非法的回应。 |
| 503 服务不可用(Service Unavailable) |
| 服务器当前无法处理请 情况是暂时性的,要产生一 | 求。这一般是由于服务器临时性 些延迟。 | 超载或维护引起的。该状态码暗示 |
| 注意:503状态码并没 在超载时采用简单处理,即 | 有暗示服务器在超载时一定要返 断掉连接。 | 回此状态码。一些服务器可能希望 |