要取得可复查的URL规范化状态证据,关键不是看某一次抓取结果,而是把“你声明了什么”“搜索引擎实际选择了什么”“这个结论在何时、由谁、用什么方法得到”三件事同时记录下来。常见误解是:只要页面写了rel="canonical",或者提交了站点地图,就算完成了规范化并已有证据。实际上,这些只是你的声明或提交动作,不等于搜索引擎已经采纳。可复查证据必须能让他人按相同步骤复现同一结论。
规范化涉及两个层面。第一层是站点侧声明,包括<link rel="canonical">、301跳转、站点地图中的URL写法、内链指向。第二层是搜索引擎侧选定,即它最终在索引和展示时选了哪个URL。前者你能完全控制,后者只能观察和验证。
多人协作时最常返工的地方,就是把声明证据当成选定证据交付。正确做法是两类都留档,并明确标注哪一类是“我方配置”,哪一类是“外部观察结果”。
一份能被他人复查的记录,至少要有以下信息,缺一项就可能导致结论无法复现:
例如,检查一个页面是否把带参数的URL规范到无参数版本,可以用命令行请求并保存响应头:
curl -I "https://example.com/page?ref=123"
如果返回301且Location指向无参数版本,这是跳转层面的声明证据;如果返回200且页面内canonical指向无参数版本,这是标签层面的声明证据。两者都存在时,跳转通常更强,但仍需观察搜索引擎最终选定的URL。
robots.txt中的Disallow只限制抓取,不等于可靠的索引移除。一个URL被robots.txt屏蔽后,搜索引擎可能仍因外部链接而将其收录,只是无法抓取内容来判断规范化。因此,用robots.txt来“解决”重复URL问题,往往得不到可复查的规范化证据,反而让状态更模糊。
站点地图同样只是提交动作,不保证收录,也不保证搜索引擎按你期望的URL建立索引。它可以作为声明证据的一部分,说明你希望哪个版本被优先发现,但不能单独作为“规范化已完成”的证据。
要让证据可复查,建议把每次规范化检查做成固定流程,而不是依赖个人记忆:
适用条件是:团队需要交付清楚、减少返工。判断结果是:如果复核人无法用你记录的方法得到相同输出,这份证据就不算可复查,应补充原始数据或更换获取方法。
选一个当前存在多个URL版本的页面,按上面的字段做一份记录,交给另一位同事独立复核一次。若两次结论不一致,先统一获取方法,再决定是否调整canonical、跳转或内链。