200
- 请求已成功,请求所希望的响应头或数据体将随此响应返回。
301
- 被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个 URI 之一。
- 如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。
- 除非额外指定,否则这个响应也是可缓存的。
- 新的永久性的 URI 应当在响应的 Location 域中返回。
- 除非这是一个 HEAD 请求,否则响应的实体中应当包含指向新的 URI 的超链接及简短说明。
- 如果这不是一个 GET 或者 HEAD 请求,因此浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。
- 注意:对于某些使用 HTTP/1.0 协议的浏览器,当它们发送的 POST 请求得到了一个301响应的话,接下来的重定向请求将会变成 GET 方式
302
- 请求的资源现在临时从不同的 URI 响应请求。
- 由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。
- 只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。
- 新的临时性的 URI 应当在响应的 Location 域中返回。
- 除非这是一个 HEAD 请求,否则响应的实体中应当包含指向新的 URI 的超链接及简短说明。
- 如果这不是一个 GET 或者 HEAD 请求,那么浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。
- 注意:虽然RFC 1945和RFC 2068规范不允许客户端在重定向时改变请求的方法,但是很多现存的浏览器将302响应视作为303响应,并且使用 GET 方式访问在 Location 中规定的 URI,而无视原先请求的方法。
- 状态码303和307被添加了进来,用以明确服务器期待客户端进行何种反应。
401
- 当前请求需要用户验证。该响应必须包含一个适用于被请求资源的 WWW-Authenticate 信息头用以询问用户信息。
- 客户端可以重复提交一个包含恰当的 Authorization 头信息的请求。
- 如果当前请求已经包含了 Authorization 证书,那么401响应代表着服务器验证已经拒绝了那些证书。
- 如果401响应包含了与前一个响应相同的身份验证询问,且浏览器已经至少尝试了一次验证,那么浏览器应当向用户展示响应中包含的实体信息,因为这个实体信息中可能包含了相关诊断信息。参见RFC 2617。
404
- 请求失败,请求所希望得到的资源未被在服务器上发现。
- 没有信息能够告诉用户这个状况到底是暂时的还是永久的。
- 假如服务器知道情况的话,应当使用410状态码来告知旧资源因为某些内部的配置机制问题,已经永久的不可用,而且没有任何可以跳转的地址。
- 404这个状态码被广泛应用于当服务器不想揭示到底为何请求被拒绝或者没有其他适合的响应可用的情况下。
410
- 被请求的资源在服务器上已经不再可用,而且没有任何已知的转发地址。
- 这样的状况应当被认为是永久性的。
- 如果可能,拥有链接编辑功能的客户端应当在获得用户许可后删除所有指向这个地址的引用。
- 如果服务器不知道或者无法确定这个状况是否是永久的,那么就应该使用404状态码。除非额外说明,否则这个响应是可缓存的。
- 410响应的目的主要是帮助网站管理员维护网站,通知用户该资源已经不再可用,并且服务器拥有者希望所有指向这个资源的远端连接也被删除。
- 这类事件在限时、增值服务中很普遍。
- 同样,410响应也被用于通知客户端在当前服务器站点上,原本属于某个个人的资源已经不再可用。
- 当然,是否需要把所有永久不可用的资源标记为'410 Gone',以及是否需要保持此标记多长时间,完全取决于服务器拥有者。
500
- 服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。
- 一般来说,这个问题都会在服务器的程序码出错时出现。
网友评论