标签或 X-Robots-Tag 头部的值,一次性验证所有指令。可检测 noindex 与 index 并存等矛盾设置,以及 max-snippet 等参数的错误值,并以列表形式展示每个指令的明细。" />

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 是以网站或 URL 模式为单位,控制爬虫是否可以获取某个 URL 的文件。robots meta 标签(包括 X-Robots-Tag 头部)则以页面为单位,控制已抓取的页面是否可以被索引、页面内的链接是否可以被追踪。前者负责能否抓取,后者负责能否索引及追踪链接,是两个不同的阶段。

noindex 会指示 Google 将该页面从搜索结果中排除。nofollow 则指示不追踪该页面内的链接(不将其用于对链接目标的抓取)。两者组合使用时,会形成一种严格的设置:页面本身不出现在搜索结果中,页面内链接的评价也不会被传递。

meta 标签只能嵌入 HTML 文档,因此无法用于 PDF 或图片,但 X-Robots-Tag 是作为 HTTP 响应头返回的,因此可以应用于 PDF、图片、视频等任何格式的文件。常见做法是在 Web 服务器设置中按文件扩展名批量添加。

可以控制搜索结果中显示的说明文字(摘要)的最大字数。例如只想展示新闻文章的开头部分,或不想让付费内容的正文被完整显示时,相比完全关闭显示的 nosnippet,能更细致地调整显示量。

设置本身是可以的,但不会按预期生效。因为 robots.txt 的 disallow 会阻止爬虫获取该页面,导致页面内写入的 noindex 标签没有机会被读取,结果可能无法从索引中移除。如果想将页面从搜索结果中排除,正确做法是在允许抓取的前提下仅使用 noindex。
ツールくん

闲话 ― 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 将其完全关闭,因此能够细致调整显示量的变化,对发布者而言是值得欢迎的改进。