跳到正文
效率工具实用笔记关于本站
浏览器工具

网页状态码怎么看:200、301、404分别意味着什么

约 7 分钟阅读AI 辅助整理

用浏览器开发者工具的 Network 面板查看自己公开测试页的 HTTP 状态码。200 表示请求成功,301 表示资源永久移动,404 表示服务器找不到资源。状态码只说明这一次 HTTP 请求的结果,不等于搜索引擎是否收录。

本文要点

  1. Network 面板记录的是浏览器发出的请求列表

  2. 200 属于 200–299 成功响应这一类

  3. 301 属于 300–399 重定向消息这一类

网页状态码怎么看:200、301、404分别意味着什么的知识要点示意图
依据已审核正文摘取要点制作的示意图,非实物照片;请结合正文中的条件与范围阅读。要点摘自已审核正文;完整条件与说明见正文。查看高清图解 ↗
本文目录

先分清:状态码说的是这次请求,不是收录结果

如果你打开自己发布的公开测试页,想确认它“有没有问题”,可以先看浏览器开发者工具 Network 面板里的状态码。但第一步要分清它回答的是什么问题。

按 MDN 对 HTTP 响应状态码的说明,状态码用来表明特定 HTTP 请求是否成功完成,并按范围分成五类:100–199 信息响应、200–299 成功响应、300–399 重定向消息、400–499 客户端错误响应、500–599 服务端错误响应。

所以状态码描述的是“这一次请求的结果”。它不描述搜索引擎有没有收录这个页面,也不描述页面内容好不好。本文只讲怎么在 Network 面板里读 200、301、404 这三个码,以及它们各自对应哪一类结果。

一个自建情境:假设你在练习目录里放了一个自己写的测试页,用本地或公开地址打开它,想通过 Network 面板确认服务器返回了什么。下面所有步骤都是编辑整理的观察方法,不是对某个真实网站的测试记录。

打开 Network 面板并刷新,先确认你看的是哪一条请求

Network 面板记录的是浏览器发出的请求列表。要看到状态码,需要先让它开始记录,再触发一次请求。

操作顺序(以下为编辑整理的步骤,不是对某个浏览器的实测记录):

1. 打开测试页,按 F12 或右键选择“检查”,切到 Network 面板。

2. 如果面板是空的,刷新页面。刷新后列表里会出现若干条请求。

3. 在列表里找到主文档那一条。它通常和地址栏里的路径一致,类型是 document。

4. 看这一条的 Status 列。这一列显示的就是 HTTP 状态码。

容易看错的地方:一个页面会带出很多请求,图片、样式、脚本各有自己的状态码。如果你看到某个 404,先确认它属于哪个资源,不要直接把整页判成 404。

本文只讨论查看自己公开测试页的状态码,不涉及修改服务器配置,也不涉及搜索引擎后台。

200 OK:请求成功,但成功含义随方法不同

200 属于 200–299 成功响应这一类。按 MDN 的说明,200 OK 表示请求成功,而“成功”的具体含义取决于 HTTP 方法:

- GET:资源已被提取并在消息正文中传输。

- HEAD:实体标头位于消息正文中。

- PUT 或 POST:描述动作结果的资源在消息体中传输。

- TRACE:消息正文包含服务器收到的请求消息。

对查看测试页这个场景来说,你通常发的是 GET 请求,所以看到 200 意味着服务器把资源返回了。

这里要避免一个推断:200 只说明这次请求成功完成,它不说明页面会被搜索引擎收录,也不说明页面内容符合你的预期。状态码和收录是两件事。

301 Moved Permanently:资源永久换了地址

301 属于 300–399 重定向消息这一类。按 MDN 的说明,301 Moved Permanently 表示请求资源的 URL 已永久更改,并在响应中给出了新的 URL。

在 Network 面板里,301 通常表现为:你请求的地址返回 301,浏览器随后按响应里的 Location 再发一次请求,列表里会多出一条指向新地址的记录。

看的时候可以核对两点:

1. 返回 301 的那条请求,是你请求的旧地址。

2. 紧随其后的那条请求,地址和 Location 指向的一致。

需要区分的是,301 说的是“永久更改”,302 Found 说的是“暂时更改”。MDN 对 302 的表述是所请求资源的 URI 已暂时更改,未来可能进一步改变。两者含义不同,不要混着读。

同样地,301 只描述这次 HTTP 请求的重定向结果,不说明搜索引擎会怎样处理这个地址变化。

404 Not Found:服务器找不到这个资源

404 属于 400–499 客户端错误响应这一类。按 MDN 的说明,404 Not Found 表示服务器找不到请求的资源;在浏览器中,这意味着无法识别 URL。

在 Network 面板里看到 404,先做两步核对:

1. 看请求的完整地址。是不是路径拼错了、大小写不对、多了或少了一段。

2. 看这条 404 属于哪个资源。如果主文档是 200,只有某张图片是 404,那问题在图片地址,不在页面本身。

MDN 还提到一种情况:服务器也可以发送 404,而不是 403 Forbidden,以向未经授权的客户端隐藏资源的存在。所以 404 不一定只表示“这个地址从来没存在过”,它也可能是服务器选择不告诉你资源是否存在。

和前面一样,404 只描述这次请求的结果,不说明搜索引擎是否收录过这个地址。

把三个码放进同一张自建对照表

下面这张表是编辑整理的对照方式,用来帮你把看到的码归位,不是对某个网站的实测记录。

状态码 | 所属类别   | 资料表述的核心意思
200    | 成功响应   | 请求成功,资源被返回
301    | 重定向消息 | 请求资源的 URL 已永久更改,响应中给出新 URL
404    | 客户端错误 | 服务器找不到请求的资源

使用这张表时注意两点:

第一,类别范围是 100–199、200–299、300–399、400–499、500–599,200、301、404 分别落在成功、重定向、客户端错误三档里。

第二,MDN 提醒,如果你收到的响应不在其列表中,则它为非标准响应,可能是服务器软件的自定义响应。所以看到不熟悉的码,先按它所在的百位区间判断大类,再回到具体说明核对。

使用限制:状态码能回答什么、不能回答什么

把状态码用对,关键是守住它的边界。

它能回答的:这一次 HTTP 请求是否成功完成、是否发生了重定向、服务器是否找到了资源。这些都能在 Network 面板的 Status 列里直接读到。

它不能回答的:搜索引擎有没有收录这个页面。状态码只表示 HTTP 结果,收录是另一套流程,本文不涉及,也不从状态码推断收录情况。

另外两点限制:

1. 本文只讲在浏览器开发者工具 Network 面板里查看自己公开测试页的状态码,不涉及服务器端配置修改、日志分析或抓取工具。

2. 本文不给出任何“看到某个码就等于某种结果”的延伸结论。资料只支持到状态码本身的含义,超出这个范围的说法本文不写。

如果你在 Network 面板里看到的码不在 200、301、404 这三个之内,可以回到 MDN 的状态码列表按百位区间查它属于哪一类,再判断它描述的是哪一步的结果。

观看知识要点视频 18 秒

18秒无旁白要点导览,文字来自已审核正文;完整步骤、条件及参考资料见下方。

参考资料

以下原始资料提供本文依据;请结合日期、适用条件和产品说明查阅。

请结合原始资料的适用条件阅读。

返回浏览器工具 →