跳至内容

Google Search Console 中的“无法读取站点地图”是什么意思?

提交与索引

这表示 Google 尝试下载你的站点地图但失败了,所以没有读取其中的任何 URL。这是抓取问题,而不是格式问题,通常会伴随状态 Couldn't fetch 出现。Google 的帮助文档列出了常见原因:robots.txt 屏蔽了该文件、该地址返回 404、服务器出错或不可用,或者网站存在未解决的人工操作。修复原因后重新提交即可。

像 Google 一样检查站点地图

请按顺序逐项排查;大多数情况在第 2 步或第 3 步就能找到原因。

  1. 在无痕浏览器窗口中打开提交的确切 URL。它应当以 XML 或纯文本形式加载,不能出现登录页、Cookie 拦截页,也不能重定向到首页。
  2. 检查状态码。运行 curl -I https://www.example.com/sitemap.xml,确认返回 200。404 表示地址有误或文件已移动;5xx 则指向服务器问题。
  3. 查看 robots.txt。如果某条 Disallow 规则覆盖了站点地图所在的路径,Google 就无法抓取它,因为 Google 对站点地图同样遵守 robots.txt。
  4. 在 Search Console 中对站点地图地址执行实时 URL 检查。Google 的站点地图报告帮助文档建议在提交前确认 Page fetch 显示为 Successful。
  5. 对比协议和主机名。把 http://example.com/sitemap.xml 提交到 https://www.example.com/ 资源,与实际可用的地址并不是同一个地址。

常见原因与修复方法

原因修复方法
robots.txt 禁止了站点地图所在路径删除或收窄该规则,然后重新提交
URL 返回 404提交文件实际所在的地址;检查 www、https 和末尾斜杠
服务器错误或超时查看服务器日志中 Googlebot 对站点地图的请求,以及生成文件时出现的错误
防火墙或机器人防护拦截了 Googlebot允许 Google 的爬虫访问站点地图及其中列出的页面
存在未解决的人工操作先在“人工操作”报告中解决;Google 将其列为可能不抓取该文件的原因之一

Google 还指出,网站抓取需求较低也可能导致站点地图未被抓取。如果上述检查全部通过,请保持文件可访问,稍后再重新提交。

看起来相似但并非此错误的情况

如果状态是 Has errors 而不是 Couldn't fetch,说明 Google 已经读取了文件,并在其中发现了问题。同一帮助页面中的典型示例包括:XML 无效(常见于重复的 <loc> 标签)、URL 所在主机与站点地图不同或位于比站点地图更高一级的文件夹、文件超过未压缩 50 MB 的限制,或 Google 无法解压压缩文件。这些问题需要在文件本身中修复,而不是在服务器端处理。

修复之后会发生什么?

请在“站点地图”报告中重新提交站点地图。Google 表示,对于失败的站点地图,它会自行再重试几次,但最终会停止,所以修复后重新提交是确保文件被读取的可靠方式。状态变为 Success 表示其中的 URL 已进入抓取队列。关于站点地图的其他内容,请参阅如何提交站点地图?和 Google Search Console 站点地图错误。

AutoPSEO 如何提供帮助

AutoPSEO 的站点地图页面会显示 Search Console 为某个资源保存的所有站点地图,包括其错误、警告、待处理状态以及 Google 上次下载的日期,因此 Google 已停止读取的站点地图一目了然。当你通过站点地图 URL 批量检查时,AutoPSEO 会自行下载该文件,并报告读取过程中遇到的任何错误。

让你的 SEO 内容自动运行

连接 Search Console 和你的网站,AutoPSEO 会立即扫描并规划首批主题。无需信用卡。