搜尋抓取

Sitemap 的 lastmod 怎么填:時間戳與 URL 重新發現的节奏

Sitemap 里的 lastmod 常被当成催抓取的開關,實际上它只是内容變更的參考信号。本文說明什么改動值得更新時間戳、日期格式與时区上的常见错誤、索引文件里 lastmod 的含义,以及怎样结合服務器日誌检查 Sitemap 中的地址是否真的被訪問。

搜尋抓取

Sitemap 的 lastmod 怎么填:時間戳與 URL 重新發現的节奏

Sitemap 是 URL 發現的重要入口,而 lastmod 是其中最常被讨论、也最容易被誤用的字段。不少站長把它当作催抓取的開關:只要時間戳更新得够勤,搜尋蜘蛛就會来得更频繁。實际執行中,情况要复杂一些。

lastmod 到底在说什么

lastmod 表達的是這個 URL 對應的内容上次發生實质性變化的時間,属于發現與調度环节的參考信息,而不是抓取指令,也不构成任何收錄或排名承诺。搜尋蜘蛛看到較新的 lastmod,可能會把该地址放進待抓取队列里相對靠前的位置,但最终是否抓取、什么时候抓取,還要看服務器响應是否稳定、站点整体抓取节奏、頁面重要程度等因素。

什么时候该更新,什么时候不该動

  • 正文内容有增删改,或者價格、库存、联系方式這類關键信息發生變化,應当更新。
  • 只改了頁头導航、頁脚版權年份、广告位或推荐位,通常不值得更新。
  • 浏览量、点赞數、實时评论這類每次訪問都可能變化的資料,不建议触發 lastmod 變化。
  • 頁面上自動生成的“更新時間”文本,如果没有實际内容變化,不要同步寫進 lastmod。

判断标准其實很简單:如果這次改動會让一個已经讀過该頁面的用戶觉得内容不一样了,就更新;如果只是頁面外壳變了,就保持原样。

格式與时区上的常见错誤

lastmod 推荐使用 W3C 日期時間格式,並带上时区,例如 2024-06-01T09:30:00+08:00。只寫日期也可以,但精确到秒更容易被正确比較。

  • 不要寫未来的時間。服務器时钟漂移或脚本错誤會产生“明天更新”的记錄,容易被判断為不可信。
  • 不要在每次生成 Sitemap 时,把全站 URL 的時間统一刷成目前時間。
  • 不要把时区寫乱,同一份 Sitemap 里混用不同时区會影响判断顺序。
  • 不要给所有地址填同一個時間,那样等于没有提供任何区分度。

索引文件里的 lastmod 是另一回事

在 Sitemap 索引文件中,lastmod 指的是该分片文件的更新時間,而不是分片内每個 URL 的更新時間。分片内容没變就不要改它,否則只是在制造無意义的變更信号。如果分片按内容類型或栏目拆分,各片更新频率差异明顯,反而更容易判断该動哪一片。

被發現不等于被抓取

Sitemap 负责把地址摆到搜尋蜘蛛面前,lastmod 只是提供了一個“可能值得再看一眼”的提示。真正影响抓取效率的還是站点本身:内鏈能不能到達目标頁、服務器响應是否稳定、頁面是否返回正常狀態碼、有没有大量低质量或重复地址占用队列。如果這些基础條件不佳,再勤快地更新時間戳,作用也有限。

几個可以立刻检查的点

  1. 抓取一份线上 Sitemap,看有没有未来時間和全站统一時間。
  2. 抽样几個 URL,確認 lastmod 與頁面上實际内容的更新時間是否一致。
  3. 检查已刪除、已重定向的地址是否還留在 Sitemap 里。
  4. 確認 Sitemap 索引文件中的 lastmod 對應的是分片文件本身。
  5. 翻看服務器日誌,看 Sitemap 中的地址是否真被訪問過,尤其是那些長期不變的栏目。
lastmod 的價值不在于寫得多新,而在于寫得准。一份時間戳可信的 Sitemap,比一份天天刷新的 Sitemap 更有參考價值。