这个坑值得记一笔。英文站把 x-default 统一指到 /subscribe/,来自德国和法国的搜索点击全落到订阅页,跳出率九成,正文页几乎没有海外自然流量。
排查方向其实有限,先把可能性排一排。x-default 应当是语言选择页或默认语言正文,不能指付费墙;模板把所有页面的 x-default 统一写成订阅地址;付费墙页面对蜘蛛返回 200 但正文只有一句订阅提示。
先确认 x-default 当前指向
curl -s https://www.example.com/en/ | grep -o 'hreflang="x-default"[^>]*'
再往下改成语言选择页并保证返回 200
curl -s -o /dev/null -w '%{http_code}\n' https://www.example.com/
复查三个语言版本的 x-default 是否一致
for p in en zh-tw ja; do curl -s https://www.example.com/$p/ | grep -c x-default; done
同事提醒我看一下最近一次发布,时间点确实对得上。
别只看报错消失,验证要多做一步。改完后国际流量报表里直接落到正文页的会话占比从一成涨到六成,订阅页的搜索落地基本消失。
x-default 不是备用语言而是兜底入口,指向需要付费或登录的页面,等于把自然流量主动交出去。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。
