站点地图(XML sitemap)是一种主动向搜索引擎交代“我有哪些页面”的方式。它不保证收录,但如果文件里混进了大量失效地址、跳转地址或本就不该被抓取的页面,反而会占用蜘蛛有限的抓取时间。定期做一次 sitemap 自查,成本不高,收益是让这份“页面清单”更可信。
一、只交代应该被收录的地址
sitemap 的定位是“推荐抓取”,不是“全站备份”。下面这些地址通常不该出现在里面:
- 返回 404、410 的失效页面;
- 返回 301、302 的跳转地址,应该直接写最终地址;
- 被 robots.txt 屏蔽或标了 noindex 的页面;
- 带会话参数、排序参数、追踪参数的动态地址;
- 站内搜索结果页、用户中心、后台等非公开页面。
判断标准很简单:这个地址单独打开,是不是一个能正常展示内容、且你希望被用户搜到的页面?如果不是,就把它从清单里去掉。
二、canonical 与 sitemap 要保持一致
同一个内容如果有多个可访问地址,sitemap 里只应该出现 canonical 指定的那一个。否则等于一边告诉蜘蛛“收录这个”,一边又在页面上说“真正的版本是另一个”,两个信号互相抵消,蜘蛛还得自己再判断一次。
三、分文件与索引文件的容量边界
单个 sitemap 文件有条数上限和体积上限(指未压缩状态),超过后需要拆成多个子文件,再用一个 sitemap index 把它们串起来。子文件按内容类型或栏目切分比较清晰,比如文章、商品、栏目各一份。这样某个栏目出问题时,只影响对应的那一份,而不是整份清单一起失效。
四、lastmod 要真实
有的站点每次生成 sitemap 都把 lastmod 刷成当天,看似“很勤快”,实际上让这个字段失去参考价值。lastmod 应该反映页面内容的实际修改时间,只在正文、标题、关键信息发生变化时才更新。模板改动、样式调整不应该触发全站时间戳变化。
五、提交之后要看反馈
提交只是第一步。后续要定期看搜索资源平台里的数据:提交了多少、被读取了多少、其中有多少进入了索引。如果发现“已提交量很大但已索引量长期偏低”,通常说明清单里混入了低质或重复地址,回到第一步重新筛一遍往往比继续提交新文件更有效。
sitemap 解决的是“让蜘蛛知道有这个地址”,不解决“这个地址值不值得收录”。内容质量的问题,还是要在内容本身处理。
六、几个容易忽略的细节
- sitemap 文件本身要能正常访问,返回 200 且是合法 XML,不要被 CDN 缓存成旧版本;
- 在 robots.txt 里用 Sitemap 指令声明文件位置,方便蜘蛛定位;
- 站点改版或大量下架内容后,及时重新生成,别让清单长期停留在旧结构上;
- HTTPS、www 与非 www、路径大小写要保持统一,避免把同一页面写成多个地址;
- 如果站点有多个语言或地区版本,可以在 sitemap 中用 hreflang 标注对应关系,减少歧义。
小结
把 sitemap 当成一份需要持续维护的清单,而不是生成一次就再也不管。定期清掉失效地址、对齐 canonical、修正 lastmod、核对文件拆分是否合理,让这份文件始终如实反映站点现状,它才能真正帮上忙。