无法读取 sitemap
简短回答
某个站点地图返回了 200 状态码,但内容不是有效的 <urlset> 或 <sitemapindex>:XML 已损坏,是 HTML 等其他格式,或者太大而无法读取。请修复文件使其能作为站点地图 XML 解析,并用索引拆分特别大的站点地图。
含义
有一个 sitemap 返回了状态 200,但它不是有效的 urlset 或 sitemap 索引(XML 损坏、格式错误或超过 50 MB)。
为什么这对 AI 搜索很重要
无法解析站点地图的爬虫会忽略它,其中的 URL 和 lastmod 日期也就丢失了。/sitemap.xml 处是 HTML 页面(通常是兜底路由,或背后没有 XML 的带样式站点地图页)是常见原因。
站点地图协议限制每个文件最多 50,000 个 URL 和未压缩 50 MB。检测只读取每个文件的有限部分,所以被截断的超大文件同样无法解析并出现在这里;拆分可以同时解决这两个问题。
如何修复
- 打开报告中的站点地图 URL 并查看源码:它必须以 XML 声明或
<urlset>/<sitemapindex>开头。AISeeWhy 报告会显示证据和可直接粘贴的修复方案;之后点击“再次检测”确认结果。 - 修复 XML 错误,如 URL 中未转义的
&(应写成&)、XML 声明前的多余输出或 HTML 错误页。 - 把大型站点地图拆分成多个文件,并在站点地图索引中列出它们。
- 让 robots.txt 的
Sitemap:行指向 XML 文件,而不是 HTML 站点地图页。
示例
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>https://example.com/guide/</loc><lastmod>2026-10-15</lastmod></url>
</urlset>
如何确认修复
修改后,在报告上点击“再次检测”:它会列出已修复的内容以及评分的变化。