网站收录

站点地图写对了才有用:sitemap 中该放与不该放的 URL

站点地图常被当成收录加速器,其实它只是一条 URL 发现通道。本文从该放什么、不该放什么、常见写法问题、提交后的验证顺序几个方面梳理 sitemap 的正确用法,并说明它与内链、抓取频次之间的关系,帮你把一份清单变成真正可用的排查工具。

网站收录

站点地图写对了才有用:sitemap 中该放与不该放的 URL

站点地图(sitemap)是给搜索引擎的一份 URL 清单,作用是帮助发现地址,而不是提交一份收录申请。理解这一点,后面的取舍就顺了:它能让蜘蛛更快知道有这么个页面,但页面最终进不进索引,仍由内容质量、重复程度和站点整体可信度决定。

sitemap 能做什么,不能做什么

  • 能做:把新页面、更新页面、层级较深的页面集中暴露给爬虫,减少靠内链慢慢被发现的时间。
  • 不能做:让低质页面获得收录,也不能替代站内链接结构。一个页面如果没有任何入口链接,只在 sitemap 里出现,被发现之后往往也难以获得持续抓取。
把 sitemap 当作发现通道,不要当作收录开关。

该放进 sitemap 的 URL

  • 返回 200、可正常访问的规范地址,也就是 canonical 指向自身的那一个。
  • 希望被收录的新页面,以及近期确实做过内容更新的页面。
  • 层级较深、靠内链不易到达的页面,例如商品详情页、文章详情页。
  • 可索引的列表页与栏目页,前提是内容有独特性、没有被参数污染。

不建议放进 sitemap 的 URL

  • 返回 301、302 的跳转地址,以及 404 和软 404 页面。
  • 被 robots.txt 屏蔽,或页面本身带 noindex 的地址。这两种情况与提交 sitemap 是矛盾的,只会在报告里留下大量被排除的记录。
  • 典型的重复地址:带排序、筛选、会话、跟踪参数的 URL,以及同一内容的不同写法。
  • 分页的深层页和站内搜索结果页,除非你确实希望它们参与索引。
  • 登录页、后台、购物车等没有收录价值的地址。

常见的写法问题

  • lastmod 造假:每次生成文件都写当前时间,会让搜索引擎不再信任这个字段,之后真正的更新反而没被注意到。
  • 单个文件的条数与体积超出限制,一般建议控制在 5 万条、未压缩 50MB 以内,超出后按需拆分并写进 sitemap 索引文件。
  • sitemap 自身被 robots.txt 屏蔽,或者文件放在需要登录才能访问的目录里。
  • 长期提交早已不存在的 URL 而不清理,报告里堆满错误类型。

提交之后看什么

提交只是开始,接下来要靠数据判断效果:

  1. 看 sitemap 报告里的已发现网址数量与错误类型,优先清理 404、跳转、被屏蔽这几类。
  2. 对照已发现但尚未抓取的 URL,如果长期排队,先检查抓取量是不是被大量无价值地址占用了。
  3. 对已抓取的页面,区分哪些进入了索引、哪些被判定为重复或已抓取未编入索引,再回到页面本身找原因。
  4. 结合服务器日志,确认蜘蛛是否真的按 sitemap 抓取,还是只抓了首页和几个热门栏目。

和其他手段如何配合

sitemap 解决的是告知,内链解决的是可达,两者缺一不可。一个只有 sitemap、没有内链入口的页面,即便被抓到,也很少被持续回访;反过来,内链结构良好的站点,即使 sitemap 更新慢一些,收录也不会明显受影响。至于蜘蛛池之类的做法,影响的是 URL 发现和抓取频次这一层,同样不改变页面的收录判定结果。

一份顺序清楚的检查清单

  1. 确认 sitemap 里的地址都返回 200,且 canonical 指向自身。
  2. 剔除跳转、404、noindex、被 robots 屏蔽的地址。
  3. 剔除参数重复和会话跟踪类地址。
  4. 校验 lastmod,只在内容真正改变时更新。
  5. 在 robots.txt 中声明 sitemap 地址,并按体量拆分文件。
  6. 提交后按报告清理错误,再结合日志观察抓取是否覆盖到目标页面。

把这些做完,sitemap 才算真正发挥了作用。它不会让收录快多少,但能帮你少掉很多明明提交了却没有反应的困惑。