常见问题

入口页设了 noindex,搜索蜘蛛还会顺着链接发现目标 URL 吗?

入口页不想被收录就加 noindex,但这会不会连带切断链接、让目标 URL 无法被发现?本文区分 noindex 与 nofollow 的作用范围,说明链接发现和索引属于不同环节,并列出 robots.txt 误用、整站响应头等常见坑,以及用请求头和服务器日志自查的具体步骤。

常见问题

入口页设了 noindex,搜索蜘蛛还会顺着链接发现目标 URL 吗?

这是蜘蛛池和入口页运营里很常见的疑问:入口页自己不想被收录,于是加了 noindex;同时又希望搜索蜘蛛顺着上面的链接去发现目标 URL。那么 noindex 会不会连链接一起断掉?

先分清 noindex 和 nofollow 管的是什么

noindex 只针对页面本身是否进入索引,它不负责切断页面里的链接。nofollow 才作用于链接,表示这个链接不作为信任投票;但即便加了 nofollow,链接仍然可能被抓取、被用于发现新 URL,只是不再传递权重信号。

所以从机制上看:入口页 noindex,页面里的普通链接依然可能被搜索蜘蛛解析和跟进。实际观察中,目标 URL 常常还是会被抓取,只是入口页自己不出现在结果里。

为什么加了 noindex,链接仍然可能被发现

  • 搜索蜘蛛抓取入口页时会解析 HTML 拿到链接,链接发现这一步和是否收录该页是两个环节。
  • noindex 主要影响索引阶段,通常发生在抓取和解析之后。
  • 只要入口页还能被外部链接、sitemap 或提交接口带进来,蜘蛛就仍可能来访。
不过这不代表 noindex 对发现没有副作用。入口页长期不被收录,往往意味着它的抓取频次和重访机会下降,链接被反复发现的概率也会变低。

容易踩坑的三种写法

  • 把 noindex 写进 robots.txt:robots.txt 不支持 noindex,只能写 Disallow。用 Disallow 屏蔽入口页,蜘蛛读不到页面内容,里面的链接自然也发现不了。
  • X-Robots-Tag: noindex 加在整站响应头:如果服务器统一给所有页面加了这个头,目标 URL 自己也会被排除在索引之外,等于白做。
  • 多层跳转后再 noindex:入口页先 302 或 meta refresh 再落到带 noindex 的页面,发现链路被拉长,中途容易被放弃。

怎么自查 noindex 有没有挡住发现

  1. 直接请求入口页,看响应头和 HTML,确认 noindex 加在入口页而不是目标页。
  2. 查服务器日志,确认搜索蜘蛛是否真的抓过入口页,返回的是 200 还是 3xx、4xx。
  3. 对比目标 URL 的抓取记录。如果日志里长期只有入口页、没有目标页,问题多半在链接形式或入口页质量,而不是 noindex。
  4. 拿一批不加 noindex 的入口页做对照,看目标 URL 的发现速度是否有明显差异。

实践建议

如果入口页只是不想被收录、但要用它做链接中转,把 noindex 放在该页的 meta 标签或该页单独设置的响应头即可,不要用 robots.txt 的 Disallow 去屏蔽。同时保证入口页返回 200、正文可解析、链接是标准 a 标签的绝对路径。

如果入口页本身没什么价值、数量又很大,更合适的做法是收敛入口页数量、按主题组织,而不是靠 noindex 堆量。noindex 只是索引层面的一个开关,它既不保证收录,也不承诺提升发现效率。