这类问题我又碰上了一次。站点从 http 迁到 https 后,GSC 里新旧两个属性并存。sitemap 一直提交在 http 属性下,https 属性里 sitemap 列表为空,覆盖率报告也停留在迁移前。
第一反应是「运维看到 sitemap 成功就以为万事大吉,没注意属性」,验证下来不成立。
原因不止一个,得分开看。https 属性是新建的,没有重新提交 sitemap;两个属性的验证方式不同,旧的 TXT 记录已经失效;http 属性的验证文件在迁 https 后失效 提交的 sitemap 被直接丢弃。
先分别看两个属性的 sitemap 状态
curl -s https://www.example.com/sitemap.xml | grep -c '<loc>'
再往下在 https 属性下重新提交 sitemap
curl -sI https://www.example.com/sitemap.xml | head -3
补齐新属性的验证
curl -s https://www.example.com/ | grep -o 'google-site-verification[^"]*'
两周后对比两个属性的覆盖率
site:https://www.example.com
恢复的判定其实很直接。在 https 属性下重新提交后,第三天开始有覆盖率数据,四周内已编入索引的数量追上旧属性并超过它。
补一句。换协议或换域名后要建新属性并重新提交 sitemap,旧属性里的历史数据会让人误以为一切正常。如果同一现象隔几天又出现,说明根因没找到,别当偶发处理。
