后台显示 Sitemap 生成成功,打开文件却只有 XML 头;另一个 Store View 的 sitemap 又全部指向主站域名。生成器没有报错,只说明它完成了当前作用域能看到的数据,不代表内容正确。
先确认这条 Sitemap 属于哪个 Store View
后台每条 sitemap 记录有明确 Store View 和文件路径。多商店环境要逐条核对,不要复用一条记录期待它自动覆盖所有域名。生成 URL 时会读取对应 Store 的 secure/unsecure Base URL,因此作用域配置错误会把整份文件指向错误站点。
用 CLI 或后台生成后,记录生成时间、文件大小和 URL 数量。文件没更新时,检查目录权限、只读 release、共享存储和多节点。后台节点写入本地磁盘,而公网请求落到另一节点,会得到旧文件或 404。
空文件先检查实体是否具备进入条件
商品需要在目标 Website 启用、可见,并符合 sitemap 配置;分类、CMS 页面也受启用状态和 Store View 影响。随机选择一个预期 URL,从实体分配一直查到最终 rewrite,不要先怀疑 XML writer。
若数据库有大量商品但 sitemap 只有少数,比较网站分配、可见性和索引状态。自定义插件可能在集合上添加过滤,导致某个 Store 全部被排除。
域名正确还要检查 URL 是否可访问
从 sitemap 抽样请求 200、301、404,确认不包含后台路径、noindex 页面、搜索结果或带 session 参数的 URL。多级 301 会浪费爬虫抓取预算;跨域跳转说明 Base URL 或 rewrite 有问题。
定时生成与提交也要闭环
手工生成正常、第二天又旧,检查 cron_schedule 中 sitemap 任务、计划频率、时区和错误日志。文件很大时确认拆分策略和压缩产物。robots.txt 或站长平台提交的路径要与真实文件一致。
验收按 Store View 分别统计 URL 数,抽样商品/分类/CMS,验证域名、语言、canonical 和 HTTP 状态。再模拟下一次 cron,确认时间戳和内容更新。Sitemap 的价值是稳定反映可索引页面,不是后台出现一行“成功”。

