问题出现得很突然,日志倒是留得挺全。新版上线七天,sitemap.xml 里还是改版前的旧地址,蜘蛛持续抓取已经 301 的 URL。新页面提交后一直显示已发现未编入索引。试过在后台点重新生成,文件没变。

刚开始盯着「生成器连接的是旧库或旧域名配置」,折腾了半个多小时,排掉了。

这类报错背后常见的原因有几处,逐个排除就行。sitemap 是静态文件,生成任务失败后一直保留旧版本。另一种情况是CDN 缓存了旧的 XML,源站更新后边缘没有回源。

还有一种情况,Search Console 里提交的仍是旧地址,新文件没被读取。

第一件事是确认线上文件里的地址

curl -s https://www.example.com/sitemap.xml | grep -m3 '<loc>'

手动重新生成一次

wp sitemap generate --force

随后清掉 CDN 的 XML 缓存

curl -X PURGE https://www.example.com/sitemap.xml

等前面都确认过,再核对文件里的域名与条数

curl -s https://www.example.com/sitemap.xml | grep -c 'https://www.example.com/'

别只看报错消失,验证要多做一步。sitemap 里全部换成新地址,条目数与实际页面一致,重新提交后新页面三天内开始被抓取。

改版清单里要把 sitemap 单独列一项,它不是自动跟着路由变的,静态文件加缓存很容易停在旧版本。如果同一现象隔几天又出现,说明根因没找到,别当偶发处理。

作者 9823189