页面被标成备用网页(有适当的规范网页),本身能正常访问,收录也显示成功,流量却全部算在了同组的另一条地址上。
排查方向其实有限,先把可能性排一排。页面上的 canonical 指向了同组的另一条地址。也可能是两条地址内容高度相似,蜘蛛选了其中一条作为规范页。
不容易想到的是,内链和 sitemap 对两条地址的权重分配不一致。
上来先确认页面上 canonical 的实际指向
curl -s https://www.example.com/b/ | grep -i canonical
如果这条才是主版本,改掉 canonical
add_filter('wpseo_canonical', 'self_canonical');
末了把另一条地址做 301 收口
rewrite ^/old-b/$ /b/ permanent;
同样的操作我在测试机上先走了一遍,线上只做验证过的部分。
别只看报错消失,验证要多做一步。备用网页标记消失,该地址出现在已编入索引中,流量回到预期页面,内链权重也集中过来。
备用网页不是错误状态,如果两条页面本来就该合并,保持现状并把内链统一到主版本即可,不必强行拆开。监控比日志更早给出信号,事后回看经常能提前半小时发现异常。