商品列表页的 HTML 只有 3KB,正文全是分类名和空 div,商品数据靠前端接口填。GSC 的覆盖率里这类页面统一标注为软 404。
把日志和配置对完,能解释这个现象的基本就这几处。服务端只渲染骨架,蜘蛛拿到的文本量不足以判为有效页面;接口对未登录请求返回空数组,兜底文案又被 CSS 隐藏;页面返回 200,但标题和正文关键词完全对不上搜索意图;同一模板生成上千页,正文重复度超过九成被整体降权。
量一下蜘蛛实际拿到的正文字节
curl -s -A 'Googlebot' https://www.example.com/list/ | wc -c
去掉标签后看还剩多少可读文字
curl -s -A 'Googlebot' https://www.example.com/list/ | sed 's/<[^>]*>//g' | tr -d ' \n' | wc -m
剩下的就是把首屏数据改成服务端渲染
add_action('template_redirect', 'render_list_ssr');
恢复的判定其实很直接。页面返回 200 时正文字节稳定在 20KB 以上,可读中文超过 600 字,GSC 里软 404 的数量连续两周为个位数。
容易忽略的是,软 404 不报错误码,只在覆盖率里体现,用体积和去标签后的字数做门槛比等报表更快发现。如果同一现象隔几天又出现,说明根因没找到,别当偶发处理。