同一个页面,因为大小写、结尾斜杠、参数顺序不同,可能被系统当成好几个地址。对访客来说都能打开,对搜索引擎来说却要花时间分辨哪个才是主地址,抓取精力也被分散。这份清单用来把 URL 的写法统一起来。
一、先把页面地址收集起来
从站点地图、服务器访问日志、站内链接里各取一份 URL 列表,去重后合并对比。看的是同一批页面在不同来源里的写法差异,不必一次覆盖全站,先把栏目页和主要的内容页理清。
- 访问日志里出现频次高、写法却不一样的地址;
- 站点地图里带大写字母、中文或空格的地址;
- 内链里带参数、带 # 或多次跳转的链接。
二、逐项确认写法
大小写
服务器区分大小写时,/About 和 /about 是两个页面。惯例是全部小写。发现大写版本仍返回 200,就要决定保留哪一个,其余用 301 收敛过去。
结尾斜杠
目录形式 /news/ 与文件形式 /news 在部分服务器上结果不同,也可能多出一次跳转。选定一种作为标准,全站内链按标准写。
参数
追踪参数、排序参数、会话 ID 会让同一页产生大量变体。先确认哪些参数会影响页面内容,哪些只是记录来源。不影响内容的参数,尽量不要出现在站内链接里。
中文与空格
URL 里出现中文、空格、括号时会被编码成 %XX 形式,不同系统编码结果可能不同。建议直接用简短英文或拼音,减少编码差异带来的重复。
扩展名
.html、.php、无扩展名混用,会让地址看起来不像同一套规则。新栏目定一种即可,旧地址保持可访问,不必强行全站改名。
三、把差异收敛掉
- 确定标准写法,写进编辑规范,新上线页面直接照做;
- 变体地址统一 301 到标准地址,确保只跳一次;
- 站内链接、站点地图、分享按钮里的地址改成标准写法,避免继续产生变体;
- 页面的 canonical 指向标准地址,与 301 的目标保持一致。
四、复查时注意别合并过头
改完后抽查若干地址,确认跳转一步到位、返回码正确、目标页面能正常访问。同时也要注意,不是所有相似地址都该合并:带独立内容的参数页、不同语言版本、分页地址,都应保留自己的 URL,只在它们确实指向同一份内容时才收敛。
URL 规范不是一次大扫除,而是让新页面不再制造新的变体。规则定得越简单,后面维护的成本越低。
最后,把这套写法交给负责发文章的人。多数重复地址不是技术问题,而是写链接时随手复制粘贴造成的。