dofollow和nofollow有什么区别?一文讲清楚

如果你刚开始接触SEO,很大概率会碰到两个词:dofollow 和 nofollow。它们直接决定了”一条外链能传递多少权重”这个核心问题,但很多人对它们的理解停留在”dofollow有用、nofollow没用”这个粗糙的二分法上。实际情况要微妙得多。

这篇文章不教你该怎么做,只把这两个概念本身讲清楚。


dofollow 和 nofollow 指的是HTML链接里的一个属性值,叫做 rel 属性。它告诉搜索引擎”当你爬到这个链接的时候,应该怎么处理它”。

当你在网页上放一个链接,HTML 代码看起来大致是这样:

<a href="https://example.com">点击这里</a>

默认情况下,不加任何额外属性,这个链接就是 dofollow 的。搜索引擎的爬虫会顺着它爬到目标网站,并且把当前页面的一部分”权重”传递给目标页面。在谷歌的排名体系里,这就相当于当前页面给目标页面”投了一票”。

如果你不想让搜索引擎爬这个链接,或者不想传递权重,就在链接里加上 rel="nofollow"

<a href="https://example.com" rel="nofollow">点击这里</a>

加上之后,谷歌看到这个标记,就不会顺着链接爬过去,也不会把权重传递过去——至少在最初的设计里是这样的。后面我们会讲到,这个规则后来发生了变化。

简单总结:dofollow = 默认状态,传递权重;nofollow = 加了一个标记,告诉搜索引擎”这条链接别算我的”


nofollow 这个属性诞生于 2005 年,由谷歌联合 Yahoo、MSN(后来的 Bing)一起推出。初衷是解决一个很具体的问题:垃圾评论

当时博客盛行,很多人在别人博客的评论区大量留下自己的网站链接,企图通过这种方式获取外链、提升排名。有了 nofollow 之后,博客平台可以在评论区的所有链接上自动加上这个标记,等于告诉谷歌:”这些链接是用户自发留下的,不是我推荐的,别算权重。”

后来 nofollow 的使用范围逐渐扩大——广告链接、赞助内容、新闻稿、用户生成内容(论坛帖子、百科词条等),很多场景下网站会自动给外链加上 nofollow。


从 2005 年到 2019 年,长达 14 年的时间里,nofollow 的含义是明确的:搜索引擎完全忽略这个链接,不爬、不传权重。

但在 2019 年 9 月,谷歌发布了一项重大更新:将 nofollow 从一个”指令”变成了一个”提示”(hint)

这意味着什么?以前谷歌看到 nofollow,做法是”好的,忽略你”。现在谷歌看到 nofollow,做法变成了”好的,我参考一下你的意见,但最终我自己判断”。

换句话说,一条 nofollow 外链也可能传递权重——如果谷歌通过其他信号判断这条链接是值得信任的。

与此同时,谷歌还引入了两个新的 rel 属性值:

  • rel="sponsored" — 用于标明广告或赞助链接
  • rel="ugc" — 用于标明用户生成内容中的链接(ugc = User Generated Content,如论坛帖子、评论等)

这三个属性——nofollow、sponsored、ugc——现在都可以作为排名参考信号。谷歌会综合多种因素来做自己的判断,而不是机械地遵守网页上写的标记。


理解了上面这些,再看实际互联网上链接的分布就清楚了。

天然是 dofollow 的场景:

  • 作者在文章正文中自然引用了某个网站的链接——大部分情况下默认就是 dofollow
  • 新闻报道、行业分析、博客推荐等编辑性内容中的链接
  • 友情链接交换中双方约定不设 nofollow

经常带有 nofollow(或 sponsored/ugc)的场景:

  • 博客评论区、论坛帖子、Wiki 条目——这些用户生成内容区域,平台方通常会统一加 nofollow 或 ugc
  • 社交媒体上的个人简介或帖子中的链接——Facebook、Twitter、LinkedIn 等都对用户链接加 nofollow
  • 广告位、赞助内容——按谷歌规定应该使用 sponsored 标记

可以看到,一个完全正常运营的网站,它获得的外链天然就是 dofollow 和 nofollow 混杂的。有编辑推荐来的 dofollow 链接,也有社交平台、论坛、目录站点给的 nofollow 链接。如果一个外链组合是 100% dofollow,反而不符合互联网链接的自然生态。


方法很简单,不需要任何工具:

  1. 打开外链所在的页面
  2. 在链接上点右键,选择”检查”(Chrome)或”检查元素”(Firefox)
  3. 在弹出的开发者工具里,找到这条链接对应的 <a> 标签
  4. rel 属性:没有 rel 属性 = dofollow;有 rel="nofollow" = nofollow;有 rel="ugc"rel="sponsored" = 对应的标记类型

注意:有些网站会同时使用多个值,比如 rel="nofollow ugc",表示既是 nofollow 又是用户生成内容。谷歌会根据自己的判断来处理。


几个要点:

  • dofollow 是链接的默认状态,不加标记就是 dofollow,传递权重
  • nofollow 是一个标记,最初用于阻止垃圾评论,后来广泛用于各种”非编辑推荐”的链接场景
  • 2019 年起,谷歌把 nofollow 从”指令”改为”提示”,nofollow 链接也可能参与排名计算
  • 一个正常的网站外链组合,天然就包含 dofollow 和 nofollow 两种链接,混合才是自然状态