识别 www 二级域名配置冲突,核心是先把“最终要交付什么结果”定清楚:用户访问 www.example.com 时,应当稳定落到一个规范主机名,并且证书、DNS、服务器虚拟主机、跳转规则、robots.txt 与站点地图都指向同一套地址。只要其中一项仍指向另一个主机名,就可能出现循环跳转、证书告警、内容重复或抓取异常。判断冲突不能只看浏览器最终打开的页面,而要把解析、证书、跳转链和页面内绝对地址逐项对照。
要判断冲突,先收集四类资料,缺一项就可能误判。
www 与根域分别解析到哪些 IP 或 CNAME,是否有多条 A 记录指向不同服务器。www,还是两者都在 SAN 列表中。资料齐了,再执行一次完整请求链检查,例如在命令行查看跳转与证书:
curl -I https://www.example.com
curl -I http://example.com
把每次响应的状态码和 Location 按顺序记下来。若出现 301 指向根域、根域又 301 回 www,就是典型的循环冲突;若 www 返回 200 而根域也返回 200,则可能是两个可访问副本并存。
常见方案只有两类:统一到 www,或统一到根域。选择依据不是偏好,而是现有资产和约束。
www、CDN 或旧系统只绑定 www、历史外链和站点地图大量使用 www 的情况。此时根域应 301 到 www,页面 canonical 也写 www。www 应 301 到根域,canonical 同步改为根域。两种方案没有天然优劣。判断标准是:跳转方向唯一、证书覆盖目标主机名、canonical 与跳转终点一致、站点地图只列终点主机名。只要四项一致,冲突就基本消除。
同一现象可能有多个解释,不要一看到跳转就断言是 DNS 问题。可以按下面顺序排查。
dig www.example.com 与 dig example.com,看是否解析到同一组地址。若不同,冲突可能出在解析层。www 不在证书内,浏览器告警可能是证书层冲突,而不是跳转层。需要特别区分:robots.txt 的抓取限制不等于可靠的索引移除,它只能阻止抓取,不能保证已收录页面消失;站点地图不保证收录,只提供发现线索;HTTPS 不保证安全无漏洞或排名,它只解决传输加密与证书匹配问题。不同搜索引擎对主机名归一和 canonical 的处理须分别核查,不能用一个平台的结果推断全部。
完成调整后,用同一组检查项验收:www 与根域只能有一个返回 200,另一个返回 301 且终点正确;证书覆盖最终主机名;页面 canonical、站点地图和内部链接都指向同一主机名;抓取工具中不再出现两个主机名互相竞争的入口。若仍出现两个 200 页面,说明跳转规则或虚拟主机绑定还没收口,应回到服务器与 CDN 配置继续核对。
下一步:先确定统一到 www 还是根域,再把 DNS、证书、跳转、canonical、站点地图五项逐一对齐,最后用一次完整请求链复测并记录结果。