先给结论:如果同一商品或分类页能通过 /Shoes/Red 和 /shoes/red 两种路径返回内容,统一映射应选一个规范形式,把另一种永久跳转到它,并同步修正站内链接、站点地图和结构化数据中的路径;不要只靠 robots.txt 限制其中一种,也不要把希望寄托在搜索引擎自行合并上。服务器或 CDN 是否区分大小写,决定了你该先改路由规则还是先改链接输出,这一步判断错了,后续动作会互相抵消。
常见表现是:日志里两种大小写路径都有抓取记录,返回状态也都是 200,但索引中可能只出现其中一条,或者两条交替出现。此时容易得出两个相反的解释。
这两种解释指向完全不同的动作:前者需要确认规范化是否真正生效,后者需要先修路由或文件命名,再谈跳转。判断依据不在收录数量,而在服务器和响应头的行为。
分别请求大小写不同的同一路径,记录状态码、Location 和规范化标签。若两者都是 200 且页面内容一致,说明服务器没有做区分,问题更可能出在链接输出不统一;若一个 200、一个 301 或 404,说明服务器已经区分,需要先决定规范形式,再补跳转。若一个 200、一个 200 但内容不同,风险最高,属于两个页面争夺同一主题。
如果服务器不区分大小写,但导航、分页、筛选参数和站点地图里混用了大小写,搜索引擎会持续发现两种写法。此时统一映射的重点是统一输出,而不是加更多跳转。反过来,如果站内链接已经统一,只有外部旧链接带不同大小写,重点才是入口跳转。
假设某分类页在改版前链接写作 /Category/Summer,改版后模板输出 /category/summer。如果日志里旧写法请求量逐步下降、新写法上升,说明链接输出正在替换;如果两者长期并存且都稳定被抓取,说明还有模板或站点地图在输出旧写法。请求量归零本身不能单独证明处理正确,也可能是抓取减少、页面被合并或日志采样变化,需要结合状态码和跳转链一起看。
先判断服务器是否区分大小写,再决定规范形式,最后统一所有输出。顺序如下:
/A 跳到 /a 再跳到 /a/ 这类链式跳转。跳转链越长,抓取预算消耗越多,规范化信号也越弱。假设某店原有分类页路径为 /Shoes/Running,外链和站点地图都使用这一写法。后来模板改为输出小写 /shoes/running,但服务器仍区分大小写,且没有配置跳转。结果是:旧路径继续返回 200,新路径也返回 200,两个页面内容相同、链接不同。此时若只把站点地图改成小写,旧路径仍会被外部链接持续发现;若只给旧路径加跳转,模板又继续输出小写,规范形式摇摆不定。
正确动作是:先确认服务器区分大小写,选定一个规范形式,例如保留已有外链较多的 /Shoes/Running;然后把 /shoes/running 301 到它,同时把模板、站点地图和结构化数据全部改回规范写法。上线后重新请求两种路径,确认小写路径返回 301、大写路径返回 200。这个动作的结果会直接影响下一步:如果跳转生效且输出统一,后续只需观察日志;如果跳转生效但日志里非规范写法仍大量出现,说明还有未修改的输出源,需要继续排查模板或第三方模块。
第一,用 robots.txt 屏蔽非规范路径。抓取限制不等于可靠的索引移除,被屏蔽的 URL 仍可能因外部链接出现在索引中,而且你无法通过抓取状态判断它是否已被处理。第二,只依赖站点地图。站点地图不保证收录,它只能帮助发现,不能替代跳转和链接统一。若两种写法都提交进站点地图,反而会强化分裂。
统一映射的核心不是让两种写法都“能被收录”,而是让搜索引擎只看到一个规范地址,并且这个地址与站内所有输出、跳转和结构化数据保持一致。做到这一点后,再去看抓取和收录变化,才有可解释的基线。