在蜘蛛池入口页排版链接时,经常有人问:给这些链接加上 rel="nofollow",搜索蜘蛛还会不会顺着爬过去?这个问题的答案不是简单的“会”或“不会”,因为 nofollow 管的是“要不要跟随、要不要传递信号”,而不是一个统一的开关。
nofollow 到底在告诉搜索蜘蛛什么
最早 nofollow 被设计出来的意图很明确:告诉搜索引擎“这个链接不是我背书的,别把权重算到对方头上”。它最初针对的是评论区、论坛签名这类用户可自由填写链接的地方。
后来搜索引擎把这个信号做了调整。以 Google 为例,nofollow 从“指令”变成了“提示”,不再被 100% 强制执行,搜索引擎会结合上下文自己判断。而其他搜索引擎对 nofollow 的处理力度并不完全相同,有的依然把它当作强指令。
所以更准确的表述是:nofollow 主要影响的是权重与信任信号的传递,至于 URL 会不会被发现、会不会被抓取,各家的行为并不统一。
常见的几种“不跟随”写法,别混为一谈
- rel="nofollow":单个链接级别,最常见的一种写法。
- rel="ugc":标记用户生成内容里的链接,本质上仍是“不背书”的意思。
- rel="sponsored":付费链接、广告链接的标记方式。
- meta name="robots" content="nofollow":作用于整个页面上的所有链接。
- X-Robots-Tag 响应头:通过 HTTP 头下发同样的规则,常用于非 HTML 文件。
前三种是“针对某条链接”,后两种是“针对整页”。在蜘蛛池入口页场景里,如果不小心在页面级加了 nofollow,影响的是整页所有出链,而不只是某一条。
URL 还会不会被发现和抓取
这里是大家最容易误解的地方。URL 被发现和被抓取本来就是两件事。nofollow 通常不会让 URL 从“已知”变成“完全未知”,但它会明显降低搜索引擎主动去抓那条链接的概率。
- 链接带 nofollow,蜘蛛仍然访问了,但访问频次很低,或者只抓了入口不抓深层。
- 链接带 nofollow,蜘蛛完全没去,直到这个 URL 从别的地方(sitemap、外链、提交接口)被再次发现。
- 同一个 URL 在两个页面都出现,一个带 nofollow 一个不带,最终抓取往往来自不带 nofollow 的那条。
换句话说,nofollow 不能当成“隐藏链接”的工具,也不能当成“照样能被抓”的保证。它只是若干信号中的一个,最终行为取决于搜索引擎自己的判断。
放到蜘蛛池里,该怎么取舍
蜘蛛池的核心目的是让目标 URL 获得被发现的入口。如果入口页的出链全部带 nofollow,这些链接的“引荐”意味就被削弱了,URL 发现效率通常不如不加标记的普通链接。
- 想让它被抓,就别加 nofollow。正常的锚文本超链接是最直接的形式。
- 页面级 nofollow 要特别小心。检查入口页的 meta robots 和 X-Robots-Tag,别把整页出链一起关掉。
- 用日志而不是猜测来判断。对比加 nofollow 前后,搜索蜘蛛对目标 URL 的访问次数、访问时间分布,看有没有明显变化。
- 别指望 nofollow 能“控制”抓取量。想控制抓取节奏,应该从页面数量、更新频率、服务器响应速度这些方面入手。
- 不同搜索引擎分开看。日志里可能有多个来源的蜘蛛,它们对 nofollow 的反应不一定一致,不要用一家的结论套到所有家身上。
几个常见的误区
- 误区一:nofollow 等于蜘蛛看不见。它不保证 URL 不被发现,只是降低被跟随的概率。
- 误区二:nofollow 等于绝对不会被抓。同样不成立,搜索引擎依然可能出于其他原因访问该 URL。
- 误区三:nofollow 能替代 robots.txt。两者作用范围不同,一个是链接级提示,一个是站点级抓取规则。
判断 nofollow 是否有影响,最靠谱的办法不是看别人的经验帖,而是拿自己站点的日志做前后对比。搜索引擎的行为会调整,昨天的结论不一定适用于今天。
总结一句:在蜘蛛池入口页里,nofollow 更适合用在“你确实不想背书、也不想让它被重点抓取”的链接上。如果你的目标是让搜索蜘蛛尽快发现并访问目标 URL,那通常不应该给这些链接加 nofollow。想确认效果,回到日志里看数据,比争论理论更实际。