站点地图(sitemap)是网站主动递给搜索引擎的一份地址清单。它不保证页面被收录,也不直接影响排名,但能帮助蜘蛛更快发现新链接、了解页面的更新节奏。问题往往出在后续:很多站点的 sitemap 在生成那一刻是准确的,之后长期没人管,慢慢变成一份与实际站点脱节的清单。蜘蛛照着走了几趟发现对不上,这份文件的可信度就会下降。
一、sitemap 是怎么慢慢“过期”的
- 改版后老链接没同步移除,表里还留着已经 404 或被 301 的地址。
- 新发布的栏目和文章靠手动补录,漏掉一批,发布时间越久缺口越大。
- lastmod 被程序批量刷成当天,与实际改动时间对不上。
- 分页、标签聚合、筛选参数页全部塞进去,地址数量虚高,真正有价值的部分被稀释。
- sitemap 文件本身能返回 200,但内容是空的,或者条数超出限制被截断。
- 多语言、多终端版本只提交了一部分,另一半依靠蜘蛛自己摸索。
这些问题单独看都不致命,叠在一起就会让蜘蛛把有限的抓取时间花在无效地址上。
二、内容取舍:放什么,不放什么
站点地图不是越全越好。它的作用是提高发现效率,而不是把站内所有能点开的链接都登记一遍。
- 建议放入:正文页、栏目页、有独立内容价值的服务页或产品页。
- 谨慎放入:标签聚合页、分页第二页之后、筛选结果页。这类页面数量容易膨胀,且内容高度重复,放进去之前先想清楚它们是否有独立价值。
- 不建议放入:登录注册、购物车、站内搜索结果、必须带参数才有内容的页面。
一个判断方法:如果这个地址被单独打开,用户看到的是一个能独立阅读的页面,那它大概率值得进表;如果打开后只是一堆链接的堆叠,或者跳到别的页面,就该再考虑一下。
三、可执行的自查清单
- 直接在浏览器访问 sitemap 地址,确认能正常打开、返回的是 XML 内容,而不是错误页或跳转页。
- 抽查 20 到 30 条 URL,逐条看状态码是否为 200,地址写法是否与页面实际地址完全一致,包括协议、是否带 www、结尾斜杠。
- 对照服务器日志里蜘蛛的访问记录,看它是否真的来读过这份文件,读完之后是否顺着里面的地址爬取。
- 核对 lastmod 字段,只在正文有实质改动时更新,日期改而内容没变属于无效信号。
- 检查单个文件的条数与体积是否在限制范围内,超出就拆成多个文件并用索引文件汇总。
- 确认 robots.txt 中声明的 Sitemap 地址与实际路径一致,别指向一个已经废弃的旧文件。
四、把维护放进日常流程
与其隔半年想起来才整理一次,不如把 sitemap 生成挂到内容发布流程里:新页面上线的同时自动进表,页面下线或改地址时自动移除。这样表里的内容始终跟着站点走,不需要额外的记忆成本。
另外可以给自己定两个检查节点:一是每次站点改版或栏目调整之后,二是每季度一次常规抽查。抽查不需要全量校验,随机取几十条看状态码和地址一致性,通常就能发现系统性问题。
站点地图的价值不在于条目多,而在于每一条都还能走得通。一份干净、及时、地址准确的清单,比一份塞满历史遗留地址的大表更有用。