在蜘蛛池和站外入口页的运营里,nofollow 是一个经常被误用的属性。有人为了防止权重外流,给入口页里所有链接都加上 rel=nofollow;也有人听说“加了 nofollow 蜘蛛就不爬了”,于是刻意加上。这两种理解都不太准确,尤其在“URL 发现”这个环节上,容易把结果归错因。
nofollow 现在的含义:提示,而不是禁令
早期 nofollow 确实接近一条指令,搜索引擎会直接忽略带该属性的链接。但近几年主流引擎陆续调整了处理方式,把它降级为一种“提示”。这意味着蜘蛛在看到 nofollow 链接时,仍然可能决定去抓取目标 URL,只是不再把它当作权重传递的依据。
不同引擎的处理差异
- Google:明确把 nofollow 作为提示使用,用于抓取和索引阶段的参考。链接仍有可能被抓取,只是不参与排名信号传递。
- Bing:同样倾向于把 nofollow 当提示处理,抓取行为可能发生,但优先级和频率会受影响。
- 其他引擎:处理方式不统一,部分仍把 nofollow 当作较强的忽略信号。
关键点:nofollow 影响的主要是权重与信任的传递,而不是“这个 URL 永远不会被蜘蛛看到”。
那为什么很多入口页加了 nofollow 后,目标 URL 确实没被爬?
原因往往不在 nofollow 本身,而在同时存在的其他因素:
- 入口页本身的抓取频率就低,蜘蛛本来就不常来,nofollow 只是让情况更差。
- 页面上的链接数量过多,nofollow 链接在抓取排队中被放到更靠后。
- 链接位置集中在页脚、侧栏等低关注区域,发现概率天然偏低。
- 目标 URL 有历史问题,比如长期返回 5xx、内容重复,抓取配额被压缩。
- 入口页还叠加了 robots.txt 限制、canonical 指向别处、noindex 等因素。
换句话说,nofollow 常常只是“压垮骆驼的最后一根稻草”,而不是唯一原因。把没被抓全部归咎于 nofollow,容易导致后续调整方向跑偏。
蜘蛛池入口页到底该不该用 nofollow
判断标准很简单:这个链接存在的目的是什么。
- 如果入口页的核心目的就是让蜘蛛发现目标 URL,不要加 nofollow。这会削弱发现概率,在入口页权重本就不高时更明显。
- 如果页面里有真实用户会点击、但你不想传递权重的少量外链,可以单独给这部分链接加 nofollow,把要推广的目标 URL 保留为普通链接。
- 不要为了“看起来自然”而随机混用属性,混乱的链接标记反而让页面更可疑,也对排查问题不利。
怎么判断 nofollow 链接有没有被爬
最直接的办法还是看服务器日志,而不是凭感觉猜测。
- 筛选搜索引擎 UA 的请求记录,排除普通用户和其他爬虫。
- 确认目标 URL 是否出现过对应来源 IP 段的访问记录。
- 如果条件允许,做对照测试:一组链接加 nofollow,一组不加,观察一段时间内的抓取覆盖差异。
- 注意观察周期。单次日志只能反映当下,不能直接下结论。
几个常见误区
- 把 nofollow 当成禁止抓取:禁止抓取要用 robots.txt;noindex 管的是索引,不是抓取。三者职责不同。
- 以为加了 nofollow 就完全不会被发现:多数情况下仍可能被抓,只是概率和频率下降。
- 把 nofollow 当成收录开关:它既不能保证收录,也不能保证不收录。
总结一下:nofollow 更像是一个“降低优先级”的建议,而不是一道封锁线。做蜘蛛池和入口页运营时,先想清楚链接的目的是发现还是防权重外流,再决定用不用这个属性。如果目的是让蜘蛛发现目标 URL,把它去掉,同时把入口页的可抓取性、链接位置和更新节奏一起做好,比纠结一个属性更有效。