在线工具AI 产品汇

工具箱 › 开发 › 状态码

HTTP 状态码速查

按 1xx 到 5xx 分类浏览 HTTP 状态码,可搜码、英文名、中文含义或排查办法,点开任意一条看它什么时候出现、常见原因与处理顺序,并收录 nginx、Cloudflare、阿里云等非官方码并单独标注。

0命中条数
0表内总数
码名称含义

点表格里任意一行看详情

详情会写这个码什么时候出现、常见原因和排查顺序。官方注册码以外的常见网关与云厂商自定义码都标了「非官方」,别当成标准语义用。

先看前一位数字

<code>2xx</code> 是成功、<code>3xx</code> 重定向、<code>4xx</code> 是请求本身有问题、<code>5xx</code> 是服务端自己出问题。分诊时先落到这一层,再看具体码。

只有一位数的 <code>1xx</code> 是中间响应,浏览器一般自己处理掉,你在开发者工具里很少直接看到。

最容易误判的几个

<code>304</code> 不是错误:带了缓存校验头(<code>If-None-Match</code> / <code>If-Modified-Since</code>)的请求命中缓存就返回它,响应体是空的。

<code>401</code> 的字面意思是「未认证」,<code>403</code> 才是「已认证但不允许」;<code>422</code> 表示能解析但内容不合校验规则,<code>400</code> 更偏语法层面出错。

301 与 308 的区别

浏览器和客户端在跟随 301 时可能把 POST 改成 GET,body 丢掉;308 明确要求保持方法与请求体。

所以整站跳 HTTPS 必须用 308,API 的临时跳转用 307 —— 这两个码就是为「不改变请求」而设的。

非官方码从哪来

网关、反向代理和云平台会自己定义码:nginx 的 499、Cloudflare 的 52x、阿里云的 598/599、Safari 的 419。

它们不在 IANA 注册表里,含义只对对应厂商成立,遇到时先确认是哪一层返回的 —— 页面上的码往往来自网关而不是你的应用。

常见问题

表里收录了多少条?

见页面上的「表内总数」,数字按表里的实际条数算。官方注册码之外还收了常见网关与云厂商的自定义码,在筛选里选「非官方」单独看。

为什么 418 我会看到?

418 I'm a teapot 确实在注册表里,但标准用途只是彩蛋。业务上拿它表达「条件不满足」属于自定义语义,客户端不一定认。

能按响应头查吗?

不能,这一页是离线速查表。想知道某个响应头怎么配,得看对应的请求本身 —— 站点里有 HTTP 头解析工具可以贴一份响应头进来看。