先给出结论:不要试图用一段说明同时满足所有人。可行做法是给每个域名写一份“用途声明”,明确它面向谁、承担什么角色、与其它域名的关系,以及允许出现哪些重复。声明能否落地,取决于两件事:这些域名是否由同一主体控制,以及相似内容是否必须同时公开可访问。条件不同,选择完全不同。
第一个条件是控制权。如果所有域名都在同一团队手里,你可以统一制定规则,用一份主文档加各域名的差异说明。如果部分域名由合作方、历史团队或不同业务线控制,你能做的只是记录现状、标注边界,并约定变更时的通知方式,而不是直接下指令。
第二个条件是内容是否必须同时在线。若相似内容只是过渡期的镜像或备份,可以逐步收敛到一个主域名。若各域名分别服务于不同地区、语言或渠道,重复是长期状态,说明的重点就变成“谁对哪类访问者负责”,而不是消灭重复。
把这两个条件交叉,会得到四种处境。多数团队实际落在“同一主体控制 + 重复长期存在”这一格,下面按这种前提展开,其它情况在例外部分说明。
一份能被核对的声明,至少包含以下字段。字段本身不重要,重要的是每个字段都能被第三方验证。
写完声明后做一个动作:随机抽取每个域名下的若干相似页面,逐一核对声明中的规范目标是否与实际输出的链接一致。若不一致,先修实现,再改声明。这个顺序不能反,否则声明会变成一厢情愿的描述。
此时说明应写成收敛计划,而不是长期分工。为每个非主域名标注“计划保留至某个可核对的事件完成”,例如内容迁移核对完毕、外链指向更新完毕。实施动作是先统一内部链接指向主域名,再观察各域名的抓取与访问是否随之变化。
需要提醒的是,抓取量下降或某域名访问归零,不能单独证明收敛正确。它也可能来自服务器屏蔽、robots.txt 限制、站点地图未更新或外部链接自然衰减。robots.txt 的抓取限制不等于可靠的索引移除,被限制抓取的页面仍可能以其它方式出现在结果中。要判断收敛是否按预期发生,应同时核对访问日志、内部链接指向和外部引用来源,而不是只看一个数字。
此时说明应写成职责边界。为每个域名写明它服务的人群和它不负责的内容,并明确相似页面之间是否互为替代。若两套内容面向不同语言,通常不需要强行指定同一个首选版本;若面向同一语言和同一意图,则应指定,否则访问者会在多个版本之间来回跳转。
实施动作是给每个域名建立一份可核对的页面清单,标注每个页面的角色和规范目标,并在模板层面固定下来。结果是:当有人新增页面时,他能从清单里查到该放在哪个域名、该指向谁,而不是凭感觉决定。这一步做完,后续的争议会从“谁对”变成“清单里怎么写的”。
多个角色对同一事实理解不同,通常不是因为谁不专业,而是因为各自看到的证据不同:运营看的是访问来源,开发看的是配置,内容看的是页面本身。把分歧转成项目,做法是让每一方都提供可复核的材料。
三方材料放在一起,冲突点通常会收敛到少数几个页面。此时再决定这些页面归哪个域名,比反复讨论原则更有效。
如果某个域名并不由你控制,声明应改为记录现状:写明你观察到的角色、你希望对方遵守的边界,以及变更时的沟通方式。不要假定对方会按你的规则调整。
站点地图不保证收录,把页面放进站点地图只说明你希望它被处理,不说明它一定会被处理。HTTPS 不保证安全无漏洞,也不保证排名,它只是传输层的一项条件。不同搜索引擎对规范标签、重定向和参数处理的实现并不一致,涉及具体判断时应分别核查,而不是把一家的结论直接套用到另一家。
最后一个可操作的检验:让一个不了解项目的人只读用途声明,然后判断某个具体页面应该属于哪个域名。如果他判断对了,说明声明足够清楚;如果他判断错了,需要修改的是声明,不是他。