蜘蛛池知识

蜘蛛池入口页的 meta 标签:canonical、robots 与 noindex 该怎么设

入口页的 meta 标签容易被忽略,但它们会影响蜘蛛对页面的判定和后续抓取。本文梳理 robots、canonical、noindex 在蜘蛛池入口页上的常见用法,说明哪些组合会互相抵消,以及设置后该从日志和索引状态里检查什么。

蜘蛛池知识

蜘蛛池入口页的 meta 标签:canonical、robots 与 noindex 该怎么设

入口页的 meta 标签经常被忽略,因为它们不像链接和内容那样直接决定蜘蛛往哪走。但在实际运营里,robots、canonical 和 noindex 这几个指令会影响蜘蛛对入口页的判定,设错了可能让入口页白做。下面按常见场景拆开说。

robots meta:入口页通常用 index,follow

页面级 robots meta 控制的是“这个页面能不能被收录、页面上的链接能不能被跟随”。入口页的职责是让蜘蛛进来并顺着链接走到目标页,所以默认应该是 index,follow。如果不希望入口页出现在搜索结果里,可以改成 noindex,follow,这样蜘蛛仍会抓取并跟链接,只是不把它放进索引。

不要用 noindex,nofollow,那等于告诉蜘蛛别跟页面上的链接,入口页就失去意义了。除非你确认这个页面只是临时占位,不打算让它传递任何抓取路径。

canonical:别轻易指向目标页

canonical 用来声明页面的规范版本。入口页如果内容重复度高,有人会想用 canonical 指向目标页,希望把信号集中过去。但实践里这么做有几个问题:一是入口页和目标页内容主题往往不同,canonical 可能被蜘蛛忽略;二是如果被采纳,入口页自身可能不再被单独处理,影响它作为抓取入口的作用。

更稳妥的做法是入口页 canonical 指向自己,或者干脆不加 canonical。多个入口页之间如果真的高度相似,优先考虑改内容差异,而不是靠 canonical 硬合并。

noindex 的使用场景与风险

noindex 适合“不想被收录、但需要被抓取”的入口页。比如批量生成的入口页,内容价值低,不希望占用索引名额,又希望蜘蛛跟链接,就可以用 noindex,follow。注意 noindex 需要蜘蛛实际抓取到页面才能生效,所以不能同时用 robots.txt 禁止抓取这个页面。两者叠加的结果是蜘蛛看不到 noindex,页面反而可能被收录或长期不更新。

常见错误:在 robots.txt 里 Disallow 了入口页路径,又在页面里写 noindex,以为双保险,实际是互相抵消。

其他 meta 的取舍

  • description:对抓取路径影响很小,写不写看入口页是否可能被展示。如果用了 noindex,description 基本没有展示机会。
  • keywords:主流搜索引擎早已不参考,不必花精力。
  • refresh:meta 刷新可以做跳转,但不如 301/302 明确,蜘蛛对它的处理也不一致,入口页跳转优先用 HTTP 状态码。
  • viewport:如果入口页可能被移动端蜘蛛抓取,加上移动适配的 viewport 是基本项。

设置后的检查习惯

meta 标签改完后,不要只看代码。隔一段时间查一下入口页在搜索引擎里的索引状态,结合日志看蜘蛛是否仍然按预期抓取。如果发现入口页大量不收录但抓取正常,通常是 noindex 生效了;如果抓取量骤降,先检查 robots.txt 和 meta robots 有没有互相冲突。

简单总结:入口页想被收录就用 index,follow;不想被收录但还要跟链接就用 noindex,follow;canonical 尽量自指,别乱指向目标页;robots.txt 和 meta robots 不要同时用来屏蔽同一个页面。