站点运营

站点运营:Sitemap 拆分与更新自查,别让索引文件成了摆设

Sitemap 是给搜索蜘蛛看的 URL 清单,但很多站点提交一次就不再维护。本文从抓取日志、文件拆分、可索引 URL、lastmod 更新和自动监控几个方面,整理一份自查清单,帮助你把 sitemap 用成持续有效的入口,而不是一次性的提交任务。

站点运营

站点运营:Sitemap 拆分与更新自查,别让索引文件成了摆设

Sitemap 本质上是一份给搜索蜘蛛看的 URL 清单。它不保证收录,但能帮助搜索引擎更快发现站内的重要页面。很多站点在刚上线时提交一次,之后就不再管,结果文件里的 URL 要么已经 404,要么缺少新栏目,蜘蛛来了一趟也找不到太多有效入口。

先确认蜘蛛是否真的在抓 sitemap

不要只看提交成功提示。可以到服务器日志里搜 /sitemap.xml 或 sitemap 索引地址,看搜索蜘蛛有没有定期访问。如果日志里几乎没有记录,先检查 robots.txt 是否误拦,再确认 sitemap 地址是否可公开访问、返回码是否为 200。

  • robots.txt 中是否允许抓取 sitemap 文件
  • sitemap 地址是否写在 robots.txt 的 Sitemap 指令里
  • 是否在搜索资源平台提交了最新地址
  • 服务器是否对 sitemap 做了不必要的鉴权或限流

拆分与容量:别把所有 URL 塞进一个文件

单个 sitemap 有数量和体积限制,通常建议控制在 5 万条 URL、未压缩 50MB 以内。超过之后要拆分成多个子文件,再用 sitemap index 汇总。按栏目或内容类型拆分还有一个好处:某个子文件出错时,不会影响其他栏目的 URL 发现。

拆分不是越细越好。分得太碎,索引文件变多,维护成本也会上升。按内容板块划分通常够用。

只放可索引、返回 200 的 URL

这是最常见的误区:把站内所有链接都丢进 sitemap,包括筛选参数页、搜索结果页、已下架页面和重定向地址。这些 URL 要么不该被索引,要么最终会跳转,放进去只会浪费抓取预算,也让 sitemap 的可信度下降。

  • 返回 301/302 的地址不要放
  • 返回 404 或软 404 的页面不要放
  • 设置了 noindex 的页面不要放
  • 站内搜索结果页、参数组合页谨慎放入
  • canonical 指向其他 URL 的页面,优先放 canonical 目标

lastmod 不要随便写

lastmod 用来告诉蜘蛛页面最后一次实质性更新的时间。如果每次生成 sitemap 都刷新所有 lastmod,蜘蛛会逐渐忽略这个字段。建议只在正文、标题或关键信息确实变化时更新,格式使用 W3C 日期时间,并注意时区一致。

让更新和监控形成习惯

新内容发布后,sitemap 应该能自动更新,而不是靠人工每月补一次。可以设置一个简单的定时任务,定期抓取自己的 sitemap,检查状态码、URL 数量和最后修改时间。发现异常时,先修 sitemap,再去看抓取和索引情况。

  1. 发布内容后触发 sitemap 更新
  2. 每周检查 sitemap 是否可正常访问
  3. 每月抽查子文件中的 URL 是否仍返回 200
  4. 记录蜘蛛对 sitemap 的访问频率,观察变化

最后提醒一句:sitemap 是辅助工具,不是收录保证。它能把 URL 送到蜘蛛面前,但页面是否被索引,还要看内容质量、站点结构和抓取状态。把 sitemap 维护成一份准确、干净的清单,长期看比一次性提交大量地址更有用。