站点地图(sitemap)最容易被误解成一个“提交按钮”:交给搜索引擎,页面就该被收录。实际上它更像一张候选清单——告诉蜘蛛“这些地址存在,可以来看看”,但来不来、看完收不收,仍由页面本身决定。真正值得花时间的问题是:清单里该写什么。
先分清站点地图能做什么
站点地图解决的是URL 发现,不是收录。它能帮新页面更快进入抓取队列,也能让蜘蛛知道你站点里有哪些重要地址,但它不改变页面质量,也不影响索引判断。清单写得越干净,蜘蛛把时间花在有用页面上的概率越高。
通常适合放进去的 URL
- 有独立价值的内容页、栏目页、商品页;
- 已经过规范化、返回 200 且允许索引的地址;
- 更新较频繁、希望被及时发现的页面;
- 站内入口较少,光靠链接不容易被爬到的新页面。
通常应该排除的 URL
- 设置了 noindex 的页面;
- 被 robots.txt 屏蔽的目录;
- 会 301、302 跳转的旧地址;
- 带筛选、排序、跟踪参数的重复地址;
- 测试环境、预发布域名下的地址;
- 404、410 等无效地址,以及已经确定要下线的页面。
把这些混在清单里,短期看不出问题,时间一长,覆盖率报告里就会堆满“已发现未收录”“已排除”的条目,反过来干扰你判断哪些页面是真的有问题。
三种常见写法要避开
- 把全站 URL 一股脑倒进去。包含大量重复地址时,蜘蛛很难判断哪个才是主版本。
- sitemap 里的地址和页面自身的 canonical 不一致。清单写 A,页面声明主版本是 B,等于给出两个信号。
- 地址写了却打不开。跳转、超时、500 都在消耗这次抓取机会。
写进清单前,问三个问题
- 这个地址单独打开,内容是否完整?
- 如果它和其他地址内容几乎一样,谁是主版本?
- 我希望它出现在搜索结果里吗?
第三个问题如果答案是否定的,就别放进去。三问都过得去,再写进站点地图,基本不会给自己添麻烦。
提交之后该看什么
不要把“提交成功”当成结果。更有用的观察点是:蜘蛛是否真的来抓过(看服务器日志)、抓到的地址是否和清单一致、覆盖率报告里出现的是“已收录”还是大量“已发现未收录”、有没有本该排除的地址被翻了进来。这些信号比清单本身更能说明问题。
站点地图是路牌,不是门票。它只负责把地址摆到蜘蛛面前,能不能留下,还要看页面本身值不值得。
最后一点:清单要跟着站点变化走。页面下线、改版换址、结构调整之后,sitemap 也要同步更新,否则你交给蜘蛛的仍是一张过期的地图。