HTTP 响应状态码(英语:HTTP response status codes)是用以表示HTTP响应状态的3位数字代码

HTTP 状态码分类

  1. 信息响应 100~199 服务器收到请求,需要请求者继续执行操作
  2. 成功响应 200~299 操作被成功接收并处理
  3. 重定向 300~399 需要进一步的操作以完成请求
  4. 客户端错误 400~499 请求包含语法错误或无法完成请求(一般为请求错误)
  5. 服务器错误 500~599 服务器在处理请求的过程中发生了错误

    一、100~199

  • 100(继续-Continue):迄今为止的所有内容都是可行的,客户端应该继续请求,如果已经完成,则忽略它
  • 101(切换协议-Switching Protocol):请求者要求服务器切换协议,服务器的Connection头被设置为”Upgrade”以表示的切换协议

    二、200~299

  • 200(成功-OK):服务器已成功响应请求

  • 201(创建-Created):请求成功并且服务器创建了新的资源
  • 202(接受-Accepted):服务器已接受请求,但尚未处理
  • 203(非权威信息-Non-Authoritative Information): 服务器已成功处理了请求,但返回的信息可能来自另一来源
  • 204(无内容No Content):服务器成功处理了请求,但没有返回任何内容
  • 205(重置内容-Reset Content):服务器成功处理了请求,但没有返回任何内容,但要求请求者重置文档视图
  • 206(部分内容-Partial Content): 服务器成功处理了部分 GET 请求

    三、300~399

  • 300(多种选择-Multiple Choice):针对请求,服务器可执行多种操作;用户或浏览器能够自行选择一个首选的地址进行重定向

  • 301(永久移动-Moved Permanently):被请求的资源已永久移动到新位置,服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置
  • 302(发现-Found):请求的资源现在临时从不同的 URI 响应请求,客户端应当继续向原有地址发送以后的请求
  • 303(查看其他位置-See Other):对应当前请求的响应可以在另一个 URI 上被找到,而且客户端应当采用 GET 的方式访问那个资源。这个方法的存在主要是为了允许由脚本激活的POST请求输出重定向到一个新的资源
  • 304(未修改-Not Modified):文档的内容(自上次访问以来或者根据请求的条件)并未修改,则服务器应当返回这个状态码
  • 307(临时重定向-Temporary Redirect):请求的资源现在临时从不同的URI 响应请求。状态码 307 与 302 之间的唯一区别在于,当发送重定向请求的时候,307 状态码可以确保请求方法和消息主体不会发生变化
  • 308(永久重定向-Permanent Redirect):被请求的资源已永久移动到新位置(语义同301)。在重定向过程中,请求方法和消息主体不会发生改变,然而在返回 301 状态码的情况下,请求方法有时候会被客户端错误地修改为 GET 方法

    四、400~499

  • 400(错误请求-Bad Request):①语义有误,当前请求无法被服务器理解②请求参数有误

  • 401(未授权-Unauthorized):客户端错误,当前请求需要用户验证(不同于403,该状态码依然可进行身份验证)
  • 403(禁止-Forbidden):客户端错误,指的是服务器端有能力处理该请求,但是拒绝授权访问
  • 404(未找到-Not Found):服务器找不到请求的网页(最常见的错误)
  • 405(方法禁用-Method Not Allowed):请求行中指定的请求方法不能被用于请求相应的资源
  • 406(不接受-Not Acceptable):请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体
  • 407(需要代理授权-Proxy Authentication Required):与401类似,不过客户端必须在代理服务器上进行身份验证
  • 408(请求超时-Request Timeout):客户端没有在服务器预备等待的时间内完成一个请求的发送,可再次发送
  • 409(冲突-Conflict):由于和被请求的资源的当前状态之间存在冲突,请求无法完成
  • 410(已删除-Gone):请求的资源已永久删除

    五、500~599

  • 500(服务器内部错误-Internal Server Error) :服务器遇到了不知道如何处理的错误

  • 501(尚未实施-Not Implemented):此请求方法不被服务器支持且无法被处理。只有GETHEAD是要求服务器支持的,它们必定不会返回此错误代码
  • 502(错误网关-Bad Gateway):服务器作为网关或代理,得到一个错误响应
  • 503(服务不可用-Service Unavailable):服务器目前无法使用(通常由于重载或维护而停机)。 通常,这只是暂时状态
  • 504(网关超时-Gateway Timeout):服务器作为网关或代理,不能及时得到响应
  • 505(HTTP 版本不受支持-HTTP Version Not Supported):服务器不支持请求中所用的 HTTP 协议版本