nginx所有状态码及解释

本文详细解析了HTTP协议中的状态码,包括成功、重定向、客户端错误和服务器错误等类别,以及每个代码的含义,帮助理解网络请求处理过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 1xx(信息性状态码):

    • 100 Continue(继续)
    • 101 Switching Protocols(切换协议)
  2. 2xx(成功状态码):

    • 200 OK(请求成功)
    • 201 Created(创建成功)
    • 202 Accepted(已接受)
    • 203 Non-Authoritative Information(非权威性信息)
    • 204 No Content(无内容)
    • 205 Reset Content(重置内容)
    • 206 Partial Content(部分内容)
  3. 3xx(重定向状态码):

    • 300 Multiple Choices(多种选择)
    • 301 Moved Permanently(永久移动)
    • 302 Found(临时移动)
    • 303 See Other(查看其他位置)
    • 304 Not Modified(未修改)
    • 307 Temporary Redirect(临时重定向)
    • 308 Permanent Redirect(永久重定向)
  4. 4xx(客户端错误状态码):

    • 400 Bad Request(错误请求)
    • 401 Unauthorized(未授权)
    • 402 Payment Required(需要付款)
    • 403 Forbidden(禁止访问)
    • 404 Not Found(未找到)
    • 405 Method Not Allowed(方法不允许)
    • 406 Not Acceptable(不可接受)
    • 407 Proxy Authentication Required(需要代理身份验证)
    • 408 Request Timeout(请求超时)
    • 409 Conflict(冲突)
    • 410 Gone(已删除)
    • 411 Length Required(需要内容长度)
    • 412 Precondition Failed(先决条件失败)
    • 413 Payload Too Large(负载过大)
    • 414 URI Too Long(URI过长)
    • 415 Unsupported Media Type(不支持的媒体类型)
    • 416 Range Not Satisfiable(范围不符合要求)
    • 417 Expectation Failed(期望失败)
    • 418 I'm a teapot(我是一个茶壶)
    • 421 Misdirected Request(错误的请求方向)
    • 422 Unprocessable Entity(无法处理的实体)
    • 423 Locked(被锁定)
    • 424 Failed Dependency(依赖关系失败)
    • 426 Upgrade Required(需要升级)
    • 428 Precondition Required(要求先决条件)
    • 429 Too Many Requests(请求过多)
    • 431 Request Header Fields Too Large(请求头字段过大)
    • 451 Unavailable For Legal Reasons(因法律原因不可用)
  5. 5xx(服务器错误状态码):

    • 500 Internal Server Error(服务器内部错误)
    • 501 Not Implemented(未实现)
    • 502 Bad Gateway(网关错误)
    • 503 Service Unavailable(服务不可用)
    • 504 Gateway Timeout(网关超时)
    • 505 HTTP Version Not Supported(HTTP版本不支持)
    • 506 Variant Also Negotiates(协商处理)
    • 507 Insufficient Storage(存储空间不足)
    • 508 Loop Detected(检测到循环)
    • 510 Not Extended(未扩展)
    • 511 Network Authentication Required(需要网络身份验证)

这些状态码和解释是根据HTTP协议标准定义的,用于表示客户端请求和服务器响应之间的处理结果。

### Nginx 常见 HTTP 状态码解释 #### 一、1xx 系列状态码 这些状态码被定义为信息性状态码,主要用于指示请求的中间过程。虽然在普通的 Web 浏览场景下不常遇到,但在复杂的 HTTP 通信环境中非常重要,尤其是在涉及流媒体传输或分块编码的情况下。 - **100 Continue**: 表明服务器已收到部分请求并希望客户端继续发送剩余数据[^1]。 - **101 Switching Protocols**: 表示服务器同意按照客户端请求的方式切换协议。 --- #### 二、2xx 系列状态码 这类状态码表明请求已被成功接收、理解和处理。 - **200 OK**: 这是最常见的状态码之一,表示请求成功完成,并且资源已经返回给客户端[^2]。 - **201 Created**: 当新资源创建成功时会返回此状态码,通常用于 POST 请求操作后的响应[^2]。 - **204 No Content**: 表示请求成功执行,但未返回任何实体内容[^2]。 --- #### 三、3xx 系列状态码 此类状态码代表重定向行为,意味着客户端需要采取进一步行动才能完成请求。 - **301 Moved Permanently**: 永久重定向,告知浏览器该 URL 已永久迁移到新的地址[^3]。 - **302 Found (Temporary Redirect)**: 临时重定向,通知客户端当前访问的目标位置发生了变化,但这种改变只是暂时的[^3]。 配置示例: ```nginx server { listen 80; server_name old_domain.com; return 302 http://new_domain.com$request_uri; } ``` - **304 Not Modified**: 如果资源自上次请求以来没有更新,则返回此状态码以节省带宽[^2]。 --- #### 四、4xx 系列状态码 这一类属于客户端错误,通常是由于不当的请求参数或其他原因引起。 - **400 Bad Request**: 客户端发出的请求有语法错误,无法解析。 - **401 Unauthorized**: 访问受保护的内容失败,提示用户需提供身份验证凭证[^2]。 - **403 Forbidden**: 即使提供了有效认证,仍然拒绝访问某些特定资源[^2]。 - **404 Not Found**: 所请求的资源不存在于服务器上[^2]。 --- #### 五、5xx 系列状态码 这是服务端错误类别,说明即使请求本身无误,但由于服务器内部问题未能正常处理。 - **500 Internal Server Error**: 泛指服务器遇到了不可预见的情况而阻止其履行请求[^2]。 - **502 Bad Gateway**: 出现在代理或网关环境里,当上游服务器返回了无效响应时触发[^2]。 - **503 Service Unavailable**: 可能是因为过载或者正在进行维护而导致的服务暂不可用状况[^2]。 - **504 Gateway Timeout**: 同样发生在代理架构中,如果等待超时仍未接收到后续节点回应则报错[^2]。 --- ### 总结 以上列举了几种典型的 HTTP 状态码以及它们的具体意义,在实际部署和调试过程中理解这些概念有助于更高效地管理和优化基于 Nginx 的 web 应用程序表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值