先把站点地图的定位摆正
站点地图(sitemap)的作用是把希望被发现的 URL 集中列出来,让搜索引擎更省力地找到入口。它不承诺收录,也不等于给页面加权。提交之后收录没有变化,多数时候不是“没提交成功”,而是列表里的 URL 本身不适合进索引,或者文件压根没被正常读取。
第一步:文件本身能不能被正常读取
- 直接在浏览器打开地址,确认返回 200,而不是 404、301 或跳到登录页。
- XML 格式要合法,标签闭合、命名空间正确,编码统一为 UTF-8。
- 单个文件不要超过 5 万条 URL、未压缩体积不超过 50MB;超出就拆成多个文件,再用 sitemap index 汇总。
- 在 robots.txt 里用 Sitemap: 声明完整地址,文件不在根目录时尤其要写全。
- 如果整站被 robots.txt 屏蔽,列表里的地址同样抓不到,先核对屏蔽规则有没有误伤。
第二步:列表里放的是不是该被收录的 URL
站点地图是“我希望进索引”的清单,不是全站 URL 备份。把不该收录的地址混进去,只会浪费抓取,还会让状态报告变得难读。
- 只放返回 200 且允许索引的页面,带 noindex 的页面不要放。
- canonical 指向别处的重复版本不要放,放你要保留的那一个。
- 301、302 跳转地址,参数排序产生的组合页,带会话 ID 的链接,都不要放。
- 分页页码、筛选排序页按站点策略决定,通常只保留规范化后的主链。
- 已下架或已删除的页面及时移除,不要长期留在列表里。
第三步:lastmod 这类字段怎么写才有意义
lastmod 只在内容确实有实质更新时才改。批量刷时间戳、每天自动更新成当前时间,会让这个信号失去参考价值,抓取方可能对你的时间字段整体打折。changefreq 和 priority 早已不是主要依据,不必花力气调。
第四步:提交之后看什么反馈
- 在站长工具里确认站点地图状态是“成功”而不是“无法读取”,并记下读取到的 URL 数量。
- 把读取数量和自己文件里的条数对一遍,差距大说明文件被截断或格式有问题。
- 看页面状态报告:是“已发现未抓取”还是“已抓取未编入索引”,这两个方向的处理方式不同。
- 对照服务器日志,确认抓取请求确实落在列表里列出的地址上,而不是只抓了首页和内链。
补充一句:站点地图解决的是“发现”,索引与否取决于页面质量、重复程度和站点整体信任,别把收录问题全压在文件上。
一份可执行的核对顺序
按这个顺序走一遍:文件能否正常打开 → 格式与体积是否合规 → robots.txt 有没有误屏 → 列表内 URL 是否都是 200 且允许索引 → lastmod 是否真实 → 站长工具读取数量是否与文件一致 → 再回到页面自身看内容厚度与重复度。
多数“提交了没动静”的情况,停在前面几步就能找到原因:文件读不进去,或者列表里塞了太多本来就不该进索引的地址。