EasyDebug.NET

HTTP 状态码速查表

1xx~5xx 含义与排查提示,含 Nginx / Cloudflare 扩展码

共 68 个状态码

100Continue

客户端应继续发送请求正文

排查: 客户端等待 100-continue 超时,可去掉 Expect 请求头直发请求体

101Switching Protocols

服务器同意切换协议(如升级 WebSocket)

排查: 升级失败时查反向代理是否转发 Upgrade 与 Connection 头

102Processing

服务器已收到请求,仍在处理中

103Early Hints

在最终响应前先行返回提示头

排查: 浏览器 DevTools 里看不到属正常,重点查 CDN 是否提前返回响应

200OK

请求成功

201Created

请求成功且创建了新资源

202Accepted

请求已受理,尚未处理完成

排查: 受理不等于完成,结果需另查任务状态接口

203Non-Authoritative Information

返回信息来自副本,非权威来源

204No Content

请求成功但无返回内容

排查: 不要给 204 写响应体,否则客户端或代理会判为协议错误

205Reset Content

请求成功,客户端应重置视图

206Partial Content

成功返回部分内容(Range 请求)

排查: 断点续传失败时查 Accept-Ranges 与 Range 处理逻辑

207Multi-Status

多个状态,用于 WebDAV

排查: WebDAV 需解析响应 XML 中各资源自己的状态码

300Multiple Choices

资源有多个可用表示

301Moved Permanently

资源已永久移动到新 URL

排查: 排查循环跳转;301 会被浏览器长期缓存,配错后很难清

302Found

资源临时移动到其他 URL

排查: 临时跳转别当永久用,长期改址应改用 301 或 308

303See Other

应使用 GET 访问另一个 URI

排查: 表单提交后用 303 跳回 GET,避免刷新重复提交

304Not Modified

缓存有效,可直接使用

排查: 页面卡旧内容时查 ETag、Last-Modified 与缓存头是否一致

307Temporary Redirect

临时重定向,保留原请求方法

排查: POST 变成 GET 说明跳转码用错,保留方法应选 307

308Permanent Redirect

永久重定向,保留原请求方法

排查: 保留请求方法的永久跳转,配错同样会被长期缓存

400Bad Request

请求语法错误,服务器无法理解

排查: 查请求体能否解析、Content-Type 与实际格式是否一致

401Unauthorized

未认证,需要登录或携带凭证

排查: 查凭证是否随请求发送,以及 WWW-Authenticate 指定的认证方式

402Payment Required

需要付费(保留状态码)

403Forbidden

已认证但无权访问该资源

排查: 先区分「无权限」与「被 WAF 或 Nginx deny 拦截」,后者同样返回 403

404Not Found

请求的资源不存在

排查: 静态资源 404 查构建产物路径与发布目录,接口 404 查路由前缀

405Method Not Allowed

请求方法不被该资源允许

排查: 看 Allow 响应头确认允许的方法;静态服务器对 PUT、DELETE 常直接 405

406Not Acceptable

无法满足 Accept 头要求的表示

排查: 查 Accept、Accept-Language 与服务端可产出的表示是否匹配

407Proxy Authentication Required

需要先通过代理服务器认证

排查: 代理认证失败,查 Proxy-Authorization 与代理自身配置

408Request Timeout

客户端请求超时

排查: 上传大文件超时,调大 client_body_timeout 与 keepalive_timeout

409Conflict

请求与当前资源状态冲突

排查: 并发写冲突,应用乐观锁或幂等键重试

410Gone

资源已永久失效

排查: 确认资源确实永久下线后再返回,并清理内链与站点地图

411Length Required

缺少 Content-Length 请求头

排查: 补上 Content-Length;分块传输时不要手写该头

412Precondition Failed

If-Match 等前置条件校验失败

排查: 查 If-Match、If-Unmodified-Since 与资源当前 ETag 是否一致

413Content Too Large

请求体过大,服务器拒绝处理

排查: 调大 Nginx 的 client_max_body_size 与网关请求体上限

414URI Too Long

请求的 URI 过长

排查: 缩短查询参数或改用 POST;异常长多为跳转反复追加参数所致

415Unsupported Media Type

请求的媒体类型不受支持

排查: 补正确的 Content-Type,charset 不匹配同样会触发

416Range Not Satisfiable

Range 请求的范围无法满足

排查: 检查 Range 是否超出资源实际长度

417Expectation Failed

Expect 请求头的要求无法满足

排查: 服务端不支持 Expect,去掉该请求头重试

418I'm a teapot

彩蛋状态码:我是茶壶

421Misdirected Request

请求被发送到无法响应的服务器

排查: 查 SNI、HTTP 版本不一致与 CDN 回源域名配置

422Unprocessable Content

语法正确但语义错误(如表单校验失败)

排查: 属业务校验失败,看响应体里的字段级错误明细

425Too Early

请求过早,存在重放风险

排查: TLS 1.3 early data 的重放保护,稍后重试即可

426Upgrade Required

需要升级协议后重试(如 TLS)

排查: 强制 HTTPS 或协议升级时,检查 Upgrade 与 TLS 配置

428Precondition Required

要求请求携带 If-Match 等前置条件

排查: 客户端需带 If-Match 等前置条件再提交

429Too Many Requests

请求过于频繁,已触发限流

排查: 看 Retry-After,并核对限流阈值(Nginx limit_req 或网关 QPS)

431Request Header Fields Too Large

请求头字段过大

排查: 精简 Cookie 与自定义头,或调大 large_client_header_buffers

451Unavailable For Legal Reasons

因法律原因拒绝提供该资源

排查: 被法律或地区策略拦截,检查合规要求与地区规则

494Request Header Too LargeNginx

Nginx 扩展码:请求头过大

排查: 调大 large_client_header_buffers,或精简 Cookie 与自定义请求头

495SSL Certificate ErrorNginx

Nginx 扩展码:客户端证书校验失败

排查: 查 ssl_verify_client 配置与客户端证书链是否完整

496SSL Certificate RequiredNginx

Nginx 扩展码:要求客户端证书但未提供

排查: 双向 TLS 场景:确认客户端已配置证书并随请求发送

497HTTP Request Sent to HTTPS PortNginx

Nginx 扩展码:用 http 访问了 https 端口

排查: 改用 https 访问,或用 error_page 497 自动跳转到 https

499Client Closed RequestNginx

Nginx 扩展码:客户端在服务端响应前断开连接

排查: 多为后端过慢触发客户端或网关超时,查上游耗时与超时阈值

500Internal Server Error

服务器内部错误

排查: 先看应用日志,再查 error_log 里的 upstream 段定位异常

501Not Implemented

服务器不支持该请求功能

排查: 确认服务是否实现该功能,或该请求方法未开放

502Bad Gateway

网关从上游收到无效响应

排查: 查上游服务是否存活、端口是否正确、连接池是否打满

503Service Unavailable

服务暂不可用(过载或维护中)

排查: 查后端实例健康、限流熔断状态与维护页配置

504Gateway Timeout

网关等待上游响应超时

排查: 查网关超时配置(proxy_read_timeout)与后端慢查询

505HTTP Version Not Supported

不支持的 HTTP 协议版本

排查: 检查客户端 HTTP 版本与协议协商配置

507Insufficient Storage

服务器存储空间不足(WebDAV)

排查: 存储空间或配额不足,清理或扩容后重试

508Loop Detected

处理时检测到无限循环(WebDAV)

排查: WebDAV 检测到循环,查软链接与 rewrite 规则

511Network Authentication Required

需要网络认证(如公共 Wi-Fi 登录)

排查: 公共 Wi-Fi 门户需先认证,检查认证页是否正常

520Web Server Returned an Unknown ErrorCloudflare

Cloudflare 扩展码:源站返回空响应或未知错误

排查: 对比源站访问日志与回源日志,确认源站是否直接返回了空响应

521Web Server Is DownCloudflare

Cloudflare 扩展码:源站已宕机

排查: 确认源站服务进程与监听端口是否正常,再看源站是否在重启

522Connection Timed OutCloudflare

Cloudflare 扩展码:回源连接超时

排查: 查源站防火墙是否放行 CDN 回源 IP,以及源站网络可达性

523Origin Is UnreachableCloudflare

Cloudflare 扩展码:源站不可达

排查: 查回源地址与 DNS 解析是否写错,源站是否只监听内网

524A Timeout OccurredCloudflare

Cloudflare 扩展码:源站响应超时(默认 100 秒)

排查: 把长任务异步化或加缓存,并确认源站自身没有慢查询

525SSL Handshake FailedCloudflare

Cloudflare 扩展码:与源站 TLS 握手失败

排查: 查源站证书、TLS 协议版本与加密套件是否被 CDN 接受

526Invalid SSL CertificateCloudflare

Cloudflare 扩展码:源站证书无效

排查: 检查证书链是否完整、域名是否匹配,或调整 SSL 模式

527Railgun Listener to Origin ErrorCloudflare

Cloudflare 扩展码:Railgun 与源站通信错误(功能已停用)

排查: Railgun 已停止服务,属历史状态码,可忽略

这个工具不好用,或者遇到 bug?

去反馈
站长的博客
提个建议