站点运营

站点运营:XML 站点地图自查,別把失效地址和不该收錄的頁面一起交出去

站点地图是主動向搜尋引擎交代頁面清單的方式,但清單本身也需要维護。本文從收錄范围、canonical 一致性、文件容量、lastmod 真實性、提交後的資料反馈等方面,梳理 XML sitemap 的定期自查要点,让這份文件如實反映站点現状,而不是成為堆积失效地址的仓库。

站点运营

站点运营:XML 站点地图自查,別把失效地址和不该收錄的頁面一起交出去

站点地图(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、核對文件拆分是否合理,让這份文件始终如實反映站点現状,它才能真正帮上忙。