之前遇到一個罄竹難書的歷史遺毒網站,是搜尋引擎爬蟲檢索資料的大敵:
1.每一個產品單頁、產品清單頁的網頁 title 名稱,描述內容都一模一樣
雖然這個沒啥大不了的,反正現在 Google 搜尋引擎會自動依網頁內容、使用者搜尋的關鍵字,自動變更 Google SERP 裡的網頁標題與描述嘛!但是搭配後面其他點一起看,仍然讓 Google 破功,網站最重要的、要在搜尋引擎見人的公開內容、能否吸引人的第一印象–Google SERP 上的標題和描述仍然是大部分頁面都長得一模一樣。
2.產品單頁、產品清單頁的主要內容都用 jQuery AJAX 載入資料
但用起來在視覺特效或 UI 順暢度也沒有甚麼感覺,不知道前人為何要這樣設計?這還是很久以前的網頁,那時候 Single Page Application / Server Side Render 都還沒成為潮名詞。現在從 Google Search Console 檢查現在是能正確擷取到 ajax 塞進來的資料,但看來是不把曾經的台灣第一入口網站 – Yahoo 奇摩放在眼裡。(沒有 Bing webmaster tool 權限,所以沒特別看 Yahoo Bing 的索引情況有多可怕)
3.沒有 RWD,而用了大小網的設計
網站很多年前建置的,但行動版網頁是前幾年後來才加的,要是 Google 的行動內容優先索引計畫 Mobile Index First 政策早幾年公告出來,決策人員當初大概就不會決定做大小網。而且手機版網站由另一家公司製作,每次要修改功能就是一場大戰。
4.頁面的後端程式是用傳統的那種 url 後面接一堆 get 參數的,但硬是用一些 router 技術,讓網頁目錄多出好幾層無意義的名稱。有些頁面卻又用錨點 (#字號後面接的 ID) 來當做不同分類商品列表的唯一網址,但也沒用 Google 從前建議的片段網址 #! 之類的處理方式,所以網站某部分看似有 N 頁不同網址的東西,但是在 Google 就只有一頁…
5.當然也沒有好好的用 H1, H2 的頁面資料層級和語意標籤去排,img 也沒有補 alt 替代文字,導覽列跟產品資訊的當然也沒有做結構化資料,爬蟲心裡苦,但爬蟲不說。

But,人生最難就是這個 but,這種品牌力和知名度強大,品牌字的搜尋量很高,外部連結不少,還有預算下數位廣告,還有好幾個專業部門負責網站營運,這些都不是問題。
系統功能先求有,再求好,網站 SEO 相關技術是持續在演進的東西,細水長流才是做生意的道理。

遭遇問題:網站在 Google 完全搜尋不到?

遇到一個神秘現象,網站可以正常瀏覽連線,但在 Google 搜尋不到?是頁面沒有被索引,還是只是在某個關鍵字排名很後面而已?先做一些基本的檢查:
– 先用 site: 指令查一下,網站上線好幾年,而且都有外部連結,結果還真的一頁都沒被索引。這肯定有些問題。
– Google Search Console 涵蓋範圍報表的,有效頁面 0 個,都在「排除原因:檢索異常」。
– robots.txt 沒有異常的阻擋索引設定,如果忘記管理後台登入網址的,還可以從 robots.txt 查,很貼心。
– 頁面上沒加 meta noindex,所以頁面本身沒有阻擋索引
– 建立一個最簡單的 html 檔案丟在根目錄,Google Search Console 一樣只有很籠統的「網頁擷取狀態:失敗」,所以不是網站或程式有些 redirect 或 router 設定有誤。
– 把網址丟到 Google Search Console 去測,只有很籠統的「網頁擷取狀態:失敗」
– Search console 的專人介入處理裡面沒有資訊,應該沒有被官方封鎖。

嗯…該不會伺服器直接把外部連進來的 Google bot 擋掉了吧?

主機資安設定,導致爬蟲無法索引嗎?

這網站的伺服器不是一般雲端/虛擬共享主機或 IDC 的公司在代管,而是由網管 IT 專人管理,但是網管 IT 人員完全否定這個推測,網管也沒有美國時間依照驗證 Googlebot 去檢查是不是被擋掉了,所以得先想辦法證明,網站無法被 Google 索引是網管人員的設定導致。

於是除了 Google Search Console,又試了幾個擷取網站內容相關的 Google 工具
複合式搜尋結果測試 無法連線
行動裝置相容性測試 無法連線
安全瀏覽網站狀態
Robots.txt 測試工具 神奇的是…顯示連線正常
– Google Ads,測試建立一則廣告,用問題網站當廣告到達網址,一樣是得到網站無法連線的訊息
PageSpeed Insights 可以得到 403 error
pagespeed 403 error
– Google Sesrch console 裡面的 sitemap 提交工具,一樣可以得到 403 error

這下終於比較有證據,證明可能是伺服器的 WAF 還是甚麼設定,讓 Google 的爬蟲無法正常索引了吧!
最後經由網管人員的調整,網站終於又開始在 Google 的自然搜尋排序中出現了,可喜可賀。

結論

1.從事各產業底層實作人員的可悲之處之一,明明不甘你的事,有問題卻找你。還好網管沒回說 403 error 不關他的事,等出現 5xx 錯誤再來談。
2.網站被「解封」之後,Google Search Console 的檢查網址的「Google 索引」會有很長一段時間還是會顯示「網頁擷取狀態:失敗」,要用右邊有一個「測試線上網址」的按鈕才會看到實際結果。
3.伺服器的資安管理真是博大精深。
4.Google 的 Mobile Index First 政策看來已經正式實施上線了,像這種有大小網的網站,使用桌上型電腦在 Google 搜尋品牌字,SERP 上的 Sitelinks 上顯示的都是行動版網站的網址。在 Google Search Console 內把電腦版網頁丟進去測,檢索到的頁面內容也都是行動版的內容,難怪這半年國內許多大型網站(如高鐵官網、friDay購物),都在把這種大小網的網站改版成 RWD 的。