這篇是關於 sitemap 的問題。抽空紀錄一下爬討論串的結論。 ### sitemap 介紹 首先極簡介紹一下 sitemap。 搜尋引擎如 Google, Bing 會使用爬蟲程式進行網頁的收錄,被收錄則可以出現在搜尋結果中。如果只是一個網頁中渲染的區塊,而非可以單獨用網址訪問的頁面,則不算對象。 sitemap 則是一個文件,通常是 xml,也聽說有 txt 或其他格式的。文件內會列出「網站中所有值得收錄的網頁網址」,比如 error 404 的自訂頁面,這種不該收錄的就不會列出。 爬蟲爬到這個文件,就可以一口氣讀到整個網站中的所有頁面並收錄。否則通常的話,不是等每個頁面被自然發現,就是手動提交個別網頁。 ### 提交 sitemap 每個搜尋引擎都有提供服務,讓人可以直接管理網域的收錄情況。 比如我有一個網站,裡面有部落格文章,Google 就有 <mark>GSC (Google Search Console)</mark>,Bing 有 <mark>Bing Webmaster Tools</mark>,可以在提交網域後,對分頁、文章的收錄與曝光情況進行追蹤、管理,並可提交單獨網址、請求收錄,或是提交 sitemap 網址、供爬蟲參考。 通常沒有到特別大的網站,都不會非要用到 sitemap 不可,光是手動提交個別網頁的網址就可以滿足需求。只是存在這個簡化收錄網址提交的途徑而已。 ### GSC 的 sitemap 問題 Google Search Console 在提交 sitemap 時很容易出問題,不確定是否因為 sitemap 在網站經營不屬於必要,所以 Google 並不重視。我主要打算探討的是一個很常見的狀況: * Google Search Console 提交 sitemap 後,卡在「無法擷取(couldn't fetch)」,沒有任何 robots.txt 設定錯誤或其餘問題、GSC 錯誤提示,並且通過 GSC 的 live test 可以得知 sitemap 本身是**可以被 Google 爬蟲抓取的**,則可以確定是把 "pending" 寫成 "couldn't fetch" 的 GSC bug,加上 sitemap 處理緩慢的既存問題造成的情況。 以我的經歷而言,自架站沒成功擷取過 sitemap,包括但不限於目前經營的網站。而我也已經放棄提交,把請求撤下了。在網路上不乏成功提交的截圖及案例,但根據我爬文,這個問題的案例相當常見,台灣的搜尋結果不知為何卻很少提到。 討論 - 此問題相關: * [檢討 GSC sitemap 的討論串(持續點擊 "more" 可以展開)](https://support.google.com/webmasters/thread/3280971/) * [對 couldn't fetch 問題的簡單描述](https://support.google.com/webmasters/thread/184533703/) 討論 - Live Test: * <https://support.google.com/webmasters/thread/3280971?hl=en&msgid=6258962> * <https://support.google.com/webmasters/thread/205687657/> 討論 - 顯示錯誤: * <https://support.google.com/webmasters/thread/3280971?hl=en&msgid=6250247> ### 建議 如果在 GSC 提交 sitemap 不幸遇到這種問題,有兩個解決途徑,一是尋求官方或網友協助,二是放棄。首先是協尋,可以通過官方頁面提供的途徑尋求: * <https://support.google.com/webmasters/answer/1249981?hl=zh-Hant> 那麼看完上文並且點進連結的人,應該已經知道**Google 對這件事是消極的,並且問題已經存在一段時間了**。要求助只能上官方論壇提問,情況頗為無力。 而之所以有像是廢話的第二點, 1. 沒有特別大、頁面上百的網站,沒有使用 sitemap 的顯著優勢(e.g. 免於分別提交、管理所有頁面索引),加上這個問題偏向無解,耗時間沒有好處 2. 可以個別提交頁面,取代失敗率高的 sitemap 提交 其中 2 才是經營網站(如部落格)需要關注的點,比如網頁如果沒有在 1~5 天內被收錄到搜尋結果,就代表 Google 認為內容可以在搜尋引擎找到更「權威」、更早提交的版本,比如跟別人撞題材的文章就會這樣,或是基於某些演算法判斷,被 Google 認為不值得收錄。 這時積極處理提交個別頁面的問題,通常才是值得的,而不是在無解題鑽牛角尖。這些是我的經驗談啦,天數也是根據經驗寫的,也有可能有意見不同的人。 {%hackmd H17VvhPaJx %}
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up