
內(nèi)容更新了但爬蟲就是不抓檢查一下 sitemap 的 lastmod一個(gè)真實(shí)的排查案例網(wǎng)站上線兩個(gè)月百度收錄為零。更詭異的是——明明內(nèi)容一直在更新爬蟲日志顯示 Bytespider 和 Baiduspider 都來(lái)過(guò)但就是只抓首頁(yè)子頁(yè)面一個(gè)都不碰。排查到最后問(wèn)題出在一個(gè)幾乎沒(méi)人注意的字段上sitemap.xml 里的lastmod?,F(xiàn)象爬蟲來(lái)了但只抓首頁(yè)先從服務(wù)器日志看爬蟲行為nginx access log# Baiduspider 訪問(wèn)記錄 [21/Jul/2026:14:36] GET / HTTP/1.1 200 [27/Jul/2026:11:19] GET / HTTP/1.1 200 [28/Jul/2026:11:57] GET / HTTP/1.1 200 [29/Jul/2026:13:54] GET / HTTP/1.1 200 [01/Aug/2026:04:05] GET / HTTP/1.1 200 [01/Aug/2026:04:05] GET /xiaohongshu_v2.jpg HTTP/1.1 200 # Baiduspider-render 渲染時(shí)抓圖片 # Bytespider 訪問(wèn)記錄 [02/Aug/2026:22:03] GET /sitemap.xml HTTP/1.1 200 [02/Aug/2026:22:13] GET /robots.txt HTTP/1.1 200規(guī)律很明顯Baiduspider 反復(fù)抓首頁(yè)GET /偶爾帶 render 爬蟲深度渲染但從不深入子頁(yè)Bytespider 只抓 sitemap.xml 和 robots.txt抓完就走了子頁(yè)面/methodology.html、/products.html 等一個(gè)都沒(méi)被訪問(wèn)過(guò)按經(jīng)驗(yàn)這種抓首頁(yè)但不深入通常有三個(gè)嫌疑robots.txt 誤攔、頁(yè)面內(nèi)鏈?zhǔn)?、或者——sitemap 的新鮮度信號(hào)過(guò)期了。排查先排除常規(guī)嫌疑1. robots.txt 檢查User-agent: * Allow: / Sitemap: https://www.example.com/sitemap.xml全放行沒(méi)問(wèn)題。2. 頁(yè)面可達(dá)性檢查curl -s -o /dev/null -w %{http_code} https://www.example.com/methodology.html # 200子頁(yè)面本身沒(méi)問(wèn)題3. 爬蟲 UA 內(nèi)容一致性# 瀏覽器 UA 和爬蟲 UA 拿到的字節(jié)數(shù)對(duì)比 curl -sL -A Mozilla/5.0 https://www.example.com/ | wc -c # 105414 curl -sL -A Bytespider https://www.example.com/ | wc -c # 105414 curl -sL -A Baiduspider https://www.example.com/ | wc -c # 105414三個(gè)一樣CDN 沒(méi)有對(duì)爬蟲截?cái)鄡?nèi)容。根因sitemap 的 lastmod 過(guò)期了最后回到 sitemap.xml 本身。一看就明白了urlsetxmlnshttp://www.sitemaps.org/schemas/sitemap/0.9urllochttps://www.example.com//loclastmod2026-07-21/lastmod!-- ← 問(wèn)題在這 --/urlurllochttps://www.example.com/methodology.html/loclastmod2026-07-21/lastmod/url.../urlset8 個(gè)頁(yè)面的 lastmod 全部停在 7 月 21 日但網(wǎng)頁(yè)文件的實(shí)際修改時(shí)間是 8 月 3 日。也就是說(shuō)內(nèi)容更新了但 sitemap 還在對(duì)爬蟲說(shuō)這個(gè)站 7 月 21 號(hào)之后沒(méi)變過(guò)。而爬蟲尤其 Bytespider的工作機(jī)制是先訪問(wèn) sitemap.xml比較lastmod和它緩存里的上次抓取時(shí)間只有 lastmod 比上次更新才去抓對(duì)應(yīng)的內(nèi)容頁(yè)lastmod 沒(méi)變 → 認(rèn)為內(nèi)容沒(méi)更新 → 跳過(guò)所以日志里的現(xiàn)象就完全解釋通了8 月 2 日 22:03 Bytespider 來(lái)抓 sitemap.xml看到 lastmod 還是 7 月 21 日覺(jué)得沒(méi)有新內(nèi)容掉頭就走了。你更新的那些 HTML 頁(yè)面它根本沒(méi)機(jī)會(huì)看到。修復(fù)更新 lastmod 并驗(yàn)證把 sitemap.xml 里所有l(wèi)astmod改成最新日期和實(shí)際內(nèi)容更新時(shí)間一致# 修改前先備份cp/var/www/html/sitemap.xml /var/www/html/sitemap.xml.bak# 更新 lastmod8 個(gè)頁(yè)面全改成 2026-08-03# 建議用腳本逐個(gè)替換不要手寫避免格式錯(cuò)誤改完驗(yàn)證三個(gè)層面1. 服務(wù)器文件層面grep-clastmod2026-08-03/lastmod/var/www/html/sitemap.xml# 8全部更新成功2. 線上訪問(wèn)層面curl-shttps://www.example.com/sitemap.xml|greplastmod# 8 個(gè) 2026-08-033. CDN 緩存層面curl-sIhttps://www.example.com/sitemap.xml|grep-icf-cache-status# 如果是 DYNAMIC說(shuō)明 CDN 不緩存這個(gè)文件爬蟲每次都能拿到最新版無(wú)需清緩存# 如果是 HIT需要在 CDN 面板 Purge 一下否則爬蟲拿到的還是舊文件這一步很關(guān)鍵如果你的 sitemap 在 CDN 里被緩存了cf-cache-status: HIT光改服務(wù)器文件沒(méi)用爬蟲拿到的是 CDN 里的舊副本必須 Purge。如果顯示 DYNAMIC說(shuō)明每次回源改完立即生效。復(fù)盤為什么這個(gè)坑容易踩階段你以為的狀態(tài)爬蟲看到的狀態(tài)更新 HTML內(nèi)容更新了頁(yè)面變了如果它來(lái)抓的話不更新 sitemap沒(méi)關(guān)系反正有 sitemaplastmod 還是舊的 → 判斷無(wú)新內(nèi)容 → 不抓更新 sitemap lastmod通知爬蟲有新內(nèi)容觸發(fā)對(duì)內(nèi)容頁(yè)的重新抓取根因是sitemap 的 lastmod 是爬蟲判斷是否值得抓取的核心信號(hào)它必須和實(shí)際內(nèi)容更新時(shí)間同步。內(nèi)容改了lastmod 不跟著改等于把更新藏起來(lái)了。排查清單可直接復(fù)用遇到內(nèi)容更新了但收錄沒(méi)動(dòng)靜按這個(gè)順序查# 1. 爬蟲到底來(lái)沒(méi)來(lái)、抓了什么# 服務(wù)器日志里分別統(tǒng)計(jì)兩個(gè)爬蟲的訪問(wèn)路徑grep-ibaiduspider /var/log/nginx/access.log|awk{print $7}|sort|uniq-cgrep-ibytespider /var/log/nginx/access.log|awk{print $7}|sort|uniq-c# 如果只有 / 和 /sitemap.xml沒(méi)有內(nèi)容頁(yè) → 大概率是 lastmod 問(wèn)題# 2. sitemap lastmod 是否和內(nèi)容更新時(shí)間一致curl-shttps://www.example.com/sitemap.xml|greplastmod# 3. 服務(wù)器上 HTML 文件的真實(shí)修改時(shí)間ls-la/var/www/html/*.html|head# 對(duì)比 lastmod如果 HTML 比 lastmod 新 → 問(wèn)題確認(rèn)# 4. 改完驗(yàn)證 CDN 緩存狀態(tài)curl-sIhttps://www.example.com/sitemap.xml|grep-icf-cache-status經(jīng)驗(yàn)總結(jié)lastmod 必須和內(nèi)容同步更新——每次改完頁(yè)面順手更新 sitemap 里對(duì)應(yīng)條目的 lastmod30 秒的事CDN 緩存是隱藏坑——改完一定要查 cf-cache-statusHIT 就 Purge爬蟲日志是最好的診斷工具——抓了什么路徑比來(lái)了多少次信息量大得多只看次數(shù)很容易被爬蟲來(lái)過(guò)誤導(dǎo)更新 sitemap 后可以主動(dòng)提交——搜索引擎站長(zhǎng)平臺(tái)的手動(dòng)提交/資源提交功能配合新 lastmod能加速爬蟲的重新抓取收錄慢的時(shí)候與其懷疑內(nèi)容質(zhì)量不如先確認(rèn)爬蟲有沒(méi)有真正看到你的更新。一個(gè)過(guò)期的 lastmod能讓所有內(nèi)容更新都白做。作者達(dá)哥專注 GEO 技術(shù)研究和 AI 落地實(shí)踐。延伸閱讀 官網(wǎng)https://www.matrixengine.site/ 百度百科https://baike.baidu.com/item/矩陣引擎重慶智能科技有限公司?? 知乎https://www.zhihu.com/people/da-ge-ai-zhuan-xing CSDNhttps://blog.csdn.net/matrix_E 百家號(hào)搜索「達(dá)哥AI轉(zhuǎn)型」