解决方案 · HTTP 响应头
如何检查 X-Robots-Tag 与 noindex 指令
检查最终 HTTP 响应中可能不会出现在页面 HTML 里的索引与搜索展示指令。
打开 HTTP 响应头快速回答
快速回答
跟随重定向到最终响应,并检查所有 X-Robots-Tag 响应头。noindex 响应头可控制 HTML 与非 HTML 资源的索引,但爬虫必须能获取该 URL 才能看到它。
先确认正在检查哪一层控制
robots 控制存在于不同层级:
robots.txt描述爬虫是否应获取某个路径。- robots meta 元素嵌入 HTML 文档中。
X-Robots-Tag通过 HTTP 响应头传递,可用于 HTML 或非 HTML 资源。
不要只读取 robots.txt 来排查 noindex 问题。还应检查最终资源响应,以及适用时的页面 HTML。
检查最终响应
最基本的响应头如下:
HTTP/1.1 200 OK
X-Robots-Tag: noindex
Google 也记录了针对特定 user-agent 的形式:
X-Robots-Tag: googlebot: noindex
跟随完整重定向链并检查最终响应。中间 301 响应上的指令与最终 200 资源返回的指令并不等价。CDN 和源站都可能添加响应头,因此还要检查是否存在多个 X-Robots-Tag 字段或合并值。
理解常见指令
noindex 要求支持它的搜索引擎不在搜索结果中展示资源;nofollow 要求不跟踪资源中的链接;nosnippet 限制文本或视频摘要,而 max-snippet 等指令设置受支持的展示上限。
不同搜索引擎对指令的支持不一定相同。请以目标引擎的官方文档为准,不要把一个提供商的行为视为通用规则。
使用 Scopeva 检查
- 打开 HTTP 响应头。
- 输入公开的完整 URL,而不只是源站主机名。
- 查看重定向链和最终 URL。
- 确认最终 HTTP 状态。
- 在 SEO 响应头分组中检查每个
X-Robots-Tag值。 - 将结果与最终 HTML 中的 robots meta 元素进行对比。
Scopeva 会显示受限的重定向链,然后分析公开最终响应的响应头,不会把中间重定向的响应头当作最终资源策略;它也不会模拟每个搜索引擎完整的索引系统。
依赖 noindex 前先检查可抓取性
爬虫必须先获取资源,才能读取 robots meta 或 X-Robots-Tag。如果 robots.txt 阻止该路径,爬虫可能看不到 noindex。对于搜索引擎已经知道的 URL,这可能使它只能保留有关被阻止 URL 的有限信息。
如果目标是移除索引,请确认目标爬虫能读取携带 noindex 的响应,并使用搜索引擎自己的工具持续观察。不要为了传递 noindex 而公开私有内容;机密资源应使用身份验证保护。
常见错误
- 检查源站响应,却忽略 CDN 改写后的公开响应头。
- 只读取重定向链的第一个响应。
- 在页面源码里寻找 X-Robots-Tag,而不是检查响应头。
- 误以为 robots.txt Disallow 会传递 noindex。
- 忽略重复或针对特定 user-agent 的值。
- 假设所有引擎对
max-snippet等展示指令支持一致。
局限
Scopeva 报告从其请求位置可见的响应头。地域规则、缓存变体、身份验证和依赖 user-agent 的响应可能不同。即使指令传递正确,也无法预测搜索引擎何时重新抓取或更新索引。
使用 Scopeva 验证
检查实际返回的配置
打开 HTTP 响应头,检查上文所述的公开信号。修改生产环境配置前,请确认匹配规则或返回的响应。
打开 HTTP 响应头常见问题
关于此任务的问题
X-Robots-Tag 与 robots.txt 相同吗?
不同。robots.txt 控制爬虫访问;X-Robots-Tag 是资源被获取后传递索引与搜索展示规则的 HTTP 响应头。
X-Robots-Tag 可以应用于 PDF 吗?
可以。HTTP 响应头可应用于 PDF、图片和视频等无法使用 robots meta 元素的非 HTML 资源。
能否同时阻止抓取并使用 noindex?
robots.txt 阻止可能使爬虫无法获取响应,也就看不到 noindex。若目标是从索引中移除,爬虫通常需要能够读取该指令。
依据
官方参考资料
技术行为最后核查于 2026年11月5日。
