先说结论:nofollow 是提示,不是绝对禁令
不少人在搭建蜘蛛池入口页时,会给外链统一加上 rel="nofollow",理由是不想把权重分出去。但随之而来的疑问是:加了 nofollow,搜索蜘蛛还会不会顺着这条链接去抓目标 URL?
这里要拆成两层看。第一层是“能不能发现”,第二层是“会不会抓取”。nofollow 主要影响的是权重传递和链接关系的认定,并不是在物理上切断爬虫的行走路径。主流搜索引擎对 nofollow 的处理,已经从早期的硬性指令逐步演变为“提示”,也就是说,它有可能仍然抓取这条链接指向的页面,也有可能不抓,取决于该 URL 本身的重要程度、历史抓取记录以及站点整体质量。
不同搜索引擎的处理并不一致
Google 从 2019 年起把 nofollow、ugc、sponsored 统一归为提示信号,官方说明里也提到,这类链接通常不会作为发现新 URL 的主要途径,但在判断某个页面值不值得抓取时仍可能跟进。相比之下,百度等搜索引擎对 nofollow 的处理相对保守,很多时候确实会直接跳过。
这意味着:如果蜘蛛池的唯一目的就是让搜索蜘蛛发现目标 URL,那么给入口页链接加 nofollow,等于在削弱发现路径。这不会带来惩罚,但大概率是白投一场。
哪些 nofollow 会真的挡住抓取
要注意区分几种写法,它们的力度完全不同:
- 链接级 rel="nofollow":作用范围最小,只针对单条链接,通常只是减少权重传递。
- 页面级 meta robots="nofollow":作用于整页所有链接,相当于告诉搜索引擎“这页上的链接都别跟”,入口页一旦这么写,整页投放基本失效。
- HTTP 响应头 X-Robots-Tag: nofollow:常见于 PDF、图片等非 HTML 资源,容易被忽略,但效果与页面级一致。
- robots.txt 的 disallow:这才是真正意义上的物理拦截,和 nofollow 是两码事,很多投放失败其实是踩了这一条。
投放前的自查清单
- 查看入口页 HTML 源码中每条目标链接,确认没有被模板批量加上 rel="nofollow"。
- 检查页面 head 区域是否存在 meta robots nofollow,尤其是主题或 CMS 自动生成的默认值。
- 用响应头查看工具确认返回头里没有 X-Robots-Tag: nofollow。
- 核对 robots.txt 是否误伤了入口页或目标路径所在目录。
- 确认链接是可直接抓取的 a 标签 href,而不是依赖点击或 JS 执行才生成的地址。
如果你确实不想传递权重
一个折中做法是把入口页和真正的权重页面分开:入口页承担 URL 发现职责,链接保持可跟随;需要控制权重流向的站内链接,再单独加 nofollow 或 ugc。这样两件事就不会互相打架。
nofollow 不是隐身衣,它管不住抓取,只管得住权重。想让搜索蜘蛛发现 URL,就别在发现路径上设绊子。
最后提醒一句,链接能否被抓取、抓取后是否被收录,本来就是两件独立的事。URL 被发现只是起点,页面质量、站点整体信任度和抓取预算,才决定后面会发生什么。