跳至正文
外链与链接建设 · Google SEO

同一页面的 URL 变体:参数和锚点算不算不同链接

// / / 光算科技

同一个页面写成四种 URL 形态,在统计工具里可能显示成四条,也可能只显示成一条。答案不是「算几条」这个数字,而是先分清 URL 的哪几个部分在起作用,再看你有没有把它们收敛成一个。官方给出的可抓取 URL 结构要求里,有一条直接决定了这个问题的答案:URL 的处理是大小写敏感的,/APPLE 和 /apple 被当作两个各自有内容的不同 URL。

先分清 URL 的哪几个部分

判断变体,得先把地址拆开。地址语法的第一手标准 RFC 3986把 URI 定义成一串按层级排列的组成部分:URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ],也就是协议、层级部分、可选的查询串和可选的片段。规范里另外定义了一组保留字符:reserved = gen-delims / sub-delims,其中 gen-delims 是 : / ? # [ ] @。规范还写明:把一个保留字符换成它对应的百分号编码形式之后的 URI,与原 URI 并不等价。这条决定了带不带百分号编码的地址不能当成同一个东西随手合并。

规范关于片段的一节值得单独看:片段组件用于间接标识一个次级资源,但使用片段并不隐含会发生一次取回动作。也就是说,地址后面挂 #section 指向的仍然是同一个主资源。这是判断锚点算不算不同链接的语法基础。

同一页面四种 URL 形态的归并示意:裸地址、带查询参数地址、末尾带锚点地址、大小写不同地址,逐个标出 Google 文档是否视为可区分以及应如何归并
原创示意:图中为同一页面的几种 URL 写法及官方口径下的处理方式,不是真实数据或后台截图。

把 URL 收敛成一个的操作清单

先动手,规则留到下一节再对。这里需要提前说明的只有一点:官方对可抓取地址有几条要求会直接决定清单怎么列,所以最好看完下一节的口径再执行。按顺序做:

  1. 列出实际存在的形态。把常见写法(带 www、不带 www、大小写、带参数、带锚点)逐个访问,记录返回的状态码和最终内容是否一致。不要凭印象列。
  2. 选出唯一的规范形态。用你现在最希望被引用的那个写法作为基准,其余全部配永久跳转收敛过去,一跳直达。跳转方式的判断见外链页面 301 之后原站该知道什么。
  3. 在基准地址上放自指的 rel="canonical"。官方在同一份文档里建议把 canonical 链到规范页自身。
  4. 把参数收敛。不改变内容的参数从可被抓取的地址里去掉,或确保它们都指向同一个规范地址。
  5. 站内链接统一。官方写明,站内链接要统一链到规范地址而不是重复地址。这一步是让信号归到同一处的最省力办法。

参数、锚点、大小写分别怎么处理

可抓取地址的结构要求给的口径可以逐条对号入座:不要用片段(# 后面的部分)来改变页面内容,文档写明 Google 搜索通常不支持片段;规定 URL 参数时用等号分隔键值对、用 & 追加参数;尽量少用参数,把不改变内容的参数去掉;注意 URL 大小写敏感;避免使用无关参数,文档在这一节列举的例子就包括引荐参数,并写明这些参数会造成大量指向相同或相似内容的 URL,Googlebot 可能因此消耗远超必要的带宽。

把官方口径和自己的报表对上,可以这样归类:

URL 形态官方口径报表里怎么处理
末尾带 #锚点片段通常不被支持,且不改变资源归到同一页;核对时按无片段地址查
多出不改变内容的参数文档建议尽量去掉;无关参数会制造海量重复 URL先确认页面是否已指定规范地址,再决定是否合并
百分号编码形式不同按语法规范,替换保留字符后的 URI 与原 URI 不等价不要手动合并,按各地址的实际状态分别核对
路径大小写不同URL 处理大小写敏感,视为不同 URL视为不同地址;服务器不区分时要统一成同一形态
带与不带 www、http 与 https协议与主机形态属于不同地址用跳转收敛到一个规范形态,再核对

要不要合并,取决于你有没有指定规范地址。官方关于指定规范 URL 的说明把方法按影响力排序:第一是跳转,是「跳转目标应成为规范地址」的强信号;第二是 rel="canonical" 链接标注;第三是站点地图收录,是较弱的信号。同一份文档也写明,如果你不指定规范地址,Google 会自行判断哪个版本对用户最合适。所以「不指定会怎样」有官方答案;「指定之后链接算在哪」这个问题,归结起来还是落在规范地址是哪一个。

怎么验证统计口径是否一致

三步。第一步,在链接报告里把同一页面的各种形态分别查一遍,看工具把它们记成几条、归到哪个 URL 上。第二步,用 URL 检查工具逐个输入,确认 Google 是否把它们聚成同一个规范地址,以及选取的规范地址是不是你指定的那个。第三步,看这个规范地址有没有出现在索引里。

如果第一步显示同一页有四种写法各自成行、而第二步又显示它们指向同一个规范地址,那两条数字都成立,只是口径不同:前者数的是发现到的地址,后者数的是归一后的结果。把这两种口径在同一张报表里分两栏记,争论就结束了。判断报告该按什么维度切,见自然外链追踪表怎么建。

哪些情况不适用强行合并

三种情况别合并。分页、筛选和排序产生的是不同的内容集合,合并会丢掉它们各自的价值,官方在同一份 URL 结构文档里专门讲了这类可叠加筛选会造成的 URL 爆炸,正确的处理方向是控制抓取而不是合并。多语言版本各有各的地址,不该合并成一个,否则语言版本信号会互相覆盖。协议与 www 差异要用跳转收敛,这一类合并是安全的,但要用永久跳转而不是软性的其他方式。

另外提醒一句:合并 URL 是站内技术动作,不会把已发出的外部链接自动改写成新地址,跳转才是承接它们的方式,统计口径上的历史链接问题见你怎么数外链。