Robots Meta 标签/X-Robots-Tag 验证工具
粘贴 标签或 X-Robots-Tag 头部的值,一次性验证所有指令。可检测 noindex 与 index 并存等矛盾设置,以及 max-snippet 等参数的错误值,并以列表形式展示每个指令的明细。
使用技巧
- 请避免同时对同一页面设置 noindex 和 robots.txt 的 disallow。如果 disallow 已阻止抓取,爬虫根本无法读取页面内的 noindex 标签,反而可能导致该页面无法按预期从索引中移除。
- Google 不会将无法识别的指令名称视为错误,而是直接忽略。这意味着混入未知指令并不致命,但也意味着拼写错误如果不检查就很难被发现。
- max-snippet:-1 和 max-video-preview:-1 是表示「无限制」的特殊值,而 0 则表示「完全不显示摘要」这一不同的含义,请勿混淆两者。
- X-Robots-Tag 头部是对 PDF、图片等非 HTML 文件也能下达 noindex 等指令的唯一方式,因为 meta 标签只能嵌入 HTML 文档中。
- 同时指定多个指令时,应以逗号分隔并合并到同一个 content 属性或头部值中。重复书写多个同名 meta 标签并不会「后者生效」,而是各自独立生效,需特别留意。
常见问题
闲话 ― robots.txt 与 robots meta 标签的区别 ― 抓取与索引的分工
robots.txt 与 robots meta 标签都是面向搜索引擎的指令,但各自负责不同的阶段。robots.txt 是放置在网站根目录的静态文本文件,以 URL 模式为单位控制「是否允许抓取」。而 robots meta 标签(以及 X-Robots-Tag 头部)则以页面为单位,精细控制「已抓取的页面是否可以被索引」「是否可以追踪其中的链接」,两者作为相互独立的层级发挥作用。
正因为存在这种分工结构,即使在被 robots.txt 设置为 disallow 的页面上写入 noindex 标签也不会生效。因为爬虫根本无法获取该页面,自然也就没有机会读取页面内的 noindex 指令。如果想将页面从搜索结果中排除,需要在保持允许抓取的前提下,仅使用 noindex 指令。
X-Robots-Tag 头部是 Google 大约在 2007 年引入的机制,使得无法使用 meta 标签的 PDF、图片、视频等非 HTML 资源也能进行同样的控制。由于可以在 Apache 等 Web 服务器配置中按文件扩展名批量设置,因此也适合用于将大量 PDF 文件一次性设为 noindex 等场景。
max-snippet、max-image-preview、max-video-preview 等带值的指令出现时间相对较晚,是 Google 在 2019 年整理搜索结果摘要显示相关政策时新增的。在此之前,若要限制摘要显示,只能使用 nosnippet 将其完全关闭,因此能够细致调整显示量的变化,对发布者而言是值得欢迎的改进。