先判断差异来自“同一对象被算成多条”,还是“不同对象本就不该合并”。假设你接手一个旧站,工具报告显示 1200 个页面,而按栏目和模板清点只有 800 个实际对象,多出的 400 条很可能来自参数页、重复模板或已退出合作关系留下的入口。去重不是把数字压到 800,而是先确认哪些记录指向同一个可维护对象,再决定保留、合并还是退出。
报告里的“页数”通常是记录条数,不等于独立内容对象。带查询参数的列表页、同一内容的不同路径、旧系统生成的动态地址,都可能各自占一条。你要做的是给每条记录找一个稳定标识,而不是看标题是否相似。
可用的标识包括:规范链接、内容主体在数据库中的主键、模板与栏目组合、以及该对象当前是否仍有维护人。假设一个旧产品页同时存在 /product?id=15 和 /p/15.html,两者标题相同但入口不同,应合并为一条,保留仍有内链和访问价值的那个地址。
动作上,先导出报告中的地址、标题、规范链接和最后修改时间,按规范链接分组。结果是:如果一组里只有一个地址有规范链接且被其他地址指向,就保留它;如果一组里没有任何地址被指向,说明该对象可能已经退出,进入下一步判断,而不是直接删除。
去重前先分类,否则容易把仍有价值的部分误删。
假设报告多出的 400 条里,250 条是同对象多地址,100 条是筛选参数,50 条是旧合作入口。前 250 条可以合并,后 150 条需要分别判断是否保留。这个分类结果直接决定下一步:合并类可以批量处理,参数类和残留类必须逐组核对。
不要一上来就对 1200 条全量操作。先按栏目、模板和参数类型各抽 10 到 20 条,人工打开确认它们指向的实际对象。抽样要覆盖不同来源,而不是只挑看起来最像重复的。
核对时记录三件事:该地址是否返回有效内容、是否有内部链接指向它、是否承担过外部流量入口。如果抽样中某一类重复的合并成功率高,再扩大到该类全量;如果某一类里出现大量不同对象,就停止合并,转为逐条判断。
这个动作的结果会影响下一步范围:抽样确认可合并的比例高,说明差异主要来自地址层;抽样确认不同对象多,说明报告口径本身需要调整,而不是继续删记录。
去重的目标不是让数字好看,而是让剩下的对象可维护、可解释。对旧内容、旧系统或旧合作关系,保留条件可以设为:仍有维护人、仍有内部链接、仍承担明确的用户任务。三个条件都不满足的对象,才进入退出流程。
退出时不要只删记录。先确认该地址是否被其他页面引用,再决定是移除链接、设置跳转还是保留只读状态。假设一个旧合作入口没有维护人,但被三个栏目页引用,直接删除会让这些栏目出现断链;先移除引用,再退出入口,顺序不同,结果也不同。
处理完成后重新导出报告,对比页数与实际对象数量。如果差异缩小到可解释范围,说明去重有效;如果仍有大量差异,回到第一步检查标识是否选错,而不是继续按标题批量合并。
如果报告页数与实际对象数量的差异来自统计口径,比如工具按请求记录计数、按不同设备分别计数,或按历史快照保留记录,那么强行去重会掩盖真实情况。此时应先调整统计口径,再决定是否处理记录。
另外,如果实际对象数量本身无法确定,比如旧系统没有稳定主键、内容由多个来源拼装,去重就缺少可靠依据。这种情况下,先建立一份人工维护的对象清单,再与报告对照,比直接清理更稳妥。具体工具是否提供规范链接字段、导出格式和去重功能,需要按你实际使用的版本核对,不能假定所有工具都一致。