sitemap 里全部是 https 地址,服务器的 https 还没配好,访问时先跳回 http,蜘蛛每次都要多走一跳。
这类报错背后常见的原因有几处,逐个排除就行。证书没有覆盖不带 www 的域名,握手失败后回落。还有一种是Nginx 里 443 的 server 块配置缺失,请求落到默认站点。
不容易想到的是,站点地址仍是 http,生成器按旧协议输出。
上来先确认 https 是否能直接返回 200
curl -sI https://www.example.com | head -3
补齐 443 监听和证书配置
listen 443 ssl; ssl_certificate /etc/ssl/fullchain.pem;
末了把站点地址改成 https 后重新生成
wp option update home 'https://www.example.com'
手上没有现成的复现脚本,就照着线上请求手工拼了一个。
报错是间歇性的,我蹲守了半小时才抓到一次完整现场。
改完先别撤,确认这几项。https 直接返回 200 不再跳转,sitemap 与页面协议一致,GSC 里的重定向提示减少。
先切 sitemap 再切服务器是本末倒置,证书和 443 就绪后再改地址,否则蜘蛛会撞上一堆跳转和证书错误,抓取成功率会掉得很厉害。改动前把原配置备份一份,出问题能马上回滚,这比任何技巧都实用。