常见问题

入口页链接给目标 URL 加了跟踪参数,搜索蜘蛛会当成新页面抓吗?

很多人习惯给入口页里的目标链接加上 utm 之类的跟踪参数做点击统计,但搜索蜘蛛只看 URL 字符串,多一个参数就是一个新地址。本文说明什么情况下这些带参地址会被当成独立页面抓取、会带来哪些实际影响,以及几种更稳妥的统计和规范化做法。

常见问题

入口页链接给目标 URL 加了跟踪参数,搜索蜘蛛会当成新页面抓吗?

给入口页里的目标链接加上 utm_source、utm_campaign、?from=xxx 这类参数,是很多人做点击统计的习惯动作。平时放在普通页面上问题不大,但放进蜘蛛池入口页,这件事会直接影响搜索蜘蛛对 URL 的判断,值得在动手前先想清楚。

搜索蜘蛛眼里的带参 URL

搜索蜘蛛不认识你的统计需求,它只认 URL 字符串。URL 里多一个参数,在它看来就是一个新地址;同一个目标页加上不同参数,就会生成一批互不相同的 URL。

真正决定影响大小的,不是入口页怎么写,而是目标页自己有没有做规范化处理。带参地址会不会被抓、会不会被当成独立页面,答案在这里。

什么情况下会被当成不同页面

  • 目标页没有 canonical,也没有做参数过滤规则,带参数版本会被当成新地址排队抓取。
  • 参数值随机、带时间戳或会话 ID,蜘蛛每次抓到的都不一样,可能持续产生新的抓取任务。
  • 带参页面内容与干净版完全一致,容易被判成重复内容。
  • 入口页链接没有加 nofollow,蜘蛛会顺着这些地址进入参数版本。

反过来说,如果目标页已经有 canonical 指向不带参数的正式地址,或者站点层面已经屏蔽了这批参数,那么带参 URL 的干扰会小很多。

对入口页和站点运营的实际影响

第一是消耗抓取预算。蜘蛛的时间有限,入口页把大量带参地址推到它面前,它会分掉本可以用来抓目标页的额度,尤其是入口页链接本来就多的时候。

第二是信号分散。目标页如果没有 canonical,外部链接、抓取频次、收录信号会散落在多个版本上,主版本的抓取节奏可能被拖慢。

把统计参数留在入口页的 href 里,本质上是用搜索蜘蛛的抓取额度换自己的点击数据,这笔账不一定划算。

更稳妥的几种做法

  1. 点击统计走服务端日志或前端点击事件,不要在 href 里拼参数。
  2. 如果确实需要带参,目标页加 canonical 指向不带参数的正式版本。
  3. 用 robots.txt 或站点层的参数处理规则,屏蔽已知的统计参数。
  4. 需要中间跳转做统计时,让参数只出现在中间页,最终跳转到干净 URL。
  5. 入口页尽量使用目标页已有的正式地址,不要为了区分来源而人为制造新地址。

怎么判断已经出问题了

  • 看服务器日志,带参地址是否被反复请求,请求量是否在持续增长。
  • 看目标页干净版本的抓取次数是否被带参版本分流。
  • 看搜索结果里是否出现了带参数的版本,或者两个版本交替出现。
  • 看入口页的抓取总量是否上去了,但目标站的抓取并没有同步增加。

如果日志里带参地址的请求占比很高,而干净地址的抓取次数在下降,通常说明入口页的链接写法已经在干扰正常的抓取分配,这时候优先改加入口页的链接写法,比继续加链接更有意义。

需要提醒的是,改掉参数只是减少不必要的干扰,抓取多少、是否收录仍由搜索引擎自己决定,任何写法都不能保证结果。