搜索抓取

nofollow、ugc、sponsored:三种链接属性对蜘蛛意味着什么

链接属性常被当成开关使用,但 nofollow、ugc、sponsored 表达的是不同语义。本文梳理三者对蜘蛛发现 URL、传递推荐信号的实际影响,以及站内链接误加 nofollow 后常见的入口流失问题,并给出可落地的检查步骤。

搜索抓取

nofollow、ugc、sponsored:三种链接属性对蜘蛛意味着什么

整理内链和外链时,rel 属性很容易被当成一个开关:加上 nofollow,就以为这个地址彻底和蜘蛛无缘了。实际情况要细一些,nofollow、ugc、sponsored 三种写法表达的是不同语义,对发现和索引的影响也不一样。

三个属性各自在说什么

  • nofollow:表示这条链接不是站点主动推荐或背书的,常见于付费位置、来源不可控的引用、投稿内容。
  • ugc:用户生成内容里的链接,比如评论区、论坛帖、留言板。
  • sponsored:付费或赞助性质的链接,比如广告位、合作推荐位。

可以把 ugc 和 sponsored 理解成 nofollow 的细分版本。三者都不再是严格的“禁止跟踪”指令,而更像给算法的提示:这条链接的分量要打折看待。

挡住了链接,不代表挡住了 URL

标了 nofollow 的链接,蜘蛛通常不会顺着它去抓目标地址,但这个 URL 仍可能从别处被发现:Sitemap、另外一条没加属性的内链、外部引用、日志里出现过的地址等。也就是说,nofollow 削弱的是某一条入口,不是让这个 URL 消失。

这一点在站内特别容易被忽略。假设一个重要栏目页只在导航里出现,而导航链接被批量加上了 nofollow,那它最主要的入口就被自己关掉了,剩下只能靠 Sitemap 或零散内链支撑。

站内链接加 nofollow 的常见后果

站内用 nofollow 一般有两种动机:一是“不想让权重流向低价值页面”,二是“想让蜘蛛少抓一些地址”。前者通常没必要,站内链接本来就是站点结构的一部分;后者用 nofollow 也不稳妥,因为这些地址往往还能通过其他路径被找到。

比较常见的问题是把分页、筛选、登录、购物车这类链接统一加上 nofollow,结果连想让蜘蛛抓的列表页也一起没了入口。这里真正要做的是分清两件事:不想被抓取和不想被当作推荐,它们的处理手段并不相同。

想控制收录,用对工具

  • 不想被索引:用 noindex,并且要保证页面本身可被抓取,否则蜘蛛看不到这个标签。
  • 不想被抓取:用 robots.txt 的 disallow 规则。
  • 不想传递推荐信号:用 nofollow 或其细分形式 ugc、sponsored。
  • 希望被发现得更快:放进 Sitemap,同时保留一到两条正常的站内入口。

这几件事作用在不同层面。把 nofollow 当成收录开关,往往既没挡住索引,又顺手削弱了内链结构,属于两头都没做好。

可以落地的几个检查

  1. 在页面源码里搜索 rel="nofollow",确认它出现在哪些位置,是不是自己有意添加的。
  2. 检查 ugc 和 sponsored 是否用在了对应场景,避免全站统一成一种写法这种粗放处理。
  3. 把 Sitemap 中的地址和站内链接做一次交叉核对,看看重点页面是否还有正常的站内入口。
  4. 在服务器日志里观察这些被标记的地址是否仍在被访问,据此判断入口是不是真的被切断了。
链接属性影响的是蜘蛛如何理解一条链接的分量,而不是给某个地址上锁。要控制抓取和索引,最终还是要回到 robots 协议、页面级标签和站点结构本身。

把 rel 属性放回它原本的位置,当作语义标注而不是万能开关,站内入口和抓取预算的分配会清楚很多。