本篇文章的意義之一,很多站長對自己網站健康狀況沒有頭緒:
在百度舉辦的活動上,有不少的站長會向百度工作人員提出一些根本無法回答的問題:收錄掉了,怎麼辦?抓取掉了,怎麼辦?流量掉了,怎麼辦?排名掉了,怎麼辦?收錄不及時,怎麼辦?
這些問題太籠統了,即使把百度所有後台數據完全開放,也無法解答。提問的人肯定是連網站的基本結構都沒有清晰的認識。好的問題是怎樣的?耐心看完就有答案了。
本篇文章的意義之二,產品改版對SEO造成毀滅性打擊
SEO最嚴重的問題,往往不是SEO問題,而是產品問題,或技術問題。有些大型網站每次大改版都是這樣的:
1,會更換一套URL pattern。
2,由於數據的不兼容,舊版本pattern無法301到最新版。
3,即使數據兼容,也忘了做301。
我問過一個產品經理,這個產品的URL換過多少pattern, 答案是3到4個。但是我從web.archive.org上看,最少8個。平均每年換一個。稍微有一點搜索引擎基本常識的人應該能意識到,這種網站是典型的no zuo no die。
本篇文章的意義之三,長期的迭代開發流程中,SEO的需求可能被逐步改錯
在產品,技術和測試的思維中,往往是沒有URL的清晰定義的,只要頁面能訪問,內容是對的就合格了.以下幾種URL都是被認為沒問題的,更不要提SEO的其他基本規范了。也就是說,事實上除了SEO沒有人關心這些東西,每個開發環節都可能遺漏或者搞錯一些東西:
1,http://www.a.com/product(category)/
2,http://www.a.com/product.html/
3,http://www.a.com/product/?channel=123&category=abc&brand=def&tracking=other_website
曾經有一個產品,本來谷歌收錄量達到了3000萬,百度收錄2000萬,流量也不錯,精力挪到別的產品上去了。 過了1個月發現流量有所下滑,以為是季節因素,沒有在意,又過了2個月,流量下降非常多。仔細檢查了一下發現一個驚人的變化。
1,本來收錄的地址是http://www.a.com/product/item100.html
2,在沒有被告知的情況下,被技術同事加了一個301跳轉,到http://www.a.com/search/?product=a&item=100
3,其中/search/目錄在robots.txt中是Disallow的
4,在隨後的2周內,收錄量最低降到了300萬左右。
我希望能有個系統自動的幫我梳理這些問題,讓我不再每天擔憂SEO的需求又不知道被誰弄掉了,如果有問題,能讓開發測試的同事馬上就收到警報,讓“擦屁股”的事情不再占用我太多時間。
內容思維導圖,元信息,頁面單元測試,蜘蛛日志監控
鑒於前邊幾點,我的解決方案是:
• 內容思維導圖
• 元信息
• 頁面單元測試
• 蜘蛛日志監控
這些方案5年前就構思好了,並且小規模試用,但是由於復雜度和開發成本較高,到過很多坑。直到最近兩年才逐步啟用。絕對不適用於小公司,請廣大SEO從業者慎重決策。
• 內容思維導圖
從產品的角度看是這樣由各類功能組成的,有合理流程關系的(流程不展開討論),符合用戶體驗的,但可能不符合搜索引擎體驗:
從SEO的角度看,網站的結構是這樣由各類用戶搜索需求組成的,也是有合理層級關系的:
不同的網站會有截然不同的思維導圖,因為他可能基本取決於技術架構。因此建議SEO從業者深入了解網站的技術架構之後再來繪制導圖。具體的細節暫不展開。但是最起碼自己要保證這幾點:
1,網站有哪些內容節點
2,哪些命中了用戶的需求
3,哪些是毫無檢索意義的
4,缺少哪些節點
5,應該如何部署層級關系
思維導圖絕對不是一勞永逸的,每當產品有新的pattern上線,或者舊的pattern下線,需要及時更新。每當你發現新的用戶搜索習慣,也應該更新,並且推送給產品同事知道。
• 元信息
我這裡說的不是, 而是一切SEO相關的,有規律的(最好是可以用正則表達的),可量化的信息。包括:標題,關鍵詞,描述,H1,等等。
從SEO的角度看,某網站的URL是這樣的,符合“思維導圖”層次的:
首頁: www.example.com/
首頁-頻道1: www.example.com/channel/
首頁-頻道1-維度1: www.example.com/channel/abc/
首頁-頻道1-維度1-維度2: www.example.com/channel/abc/xyz/
首頁-頻道1-詳細頁: www.example.com/channel/item12345/
從產品,開發,測試的角度看URL可能是這樣無序的:
• www.example.com/channel/?category=abc&brand=xyz&tracking=other_website
• www.example.com/channel/?item=12345
如果下一版改成這樣也沒問題的:
www.example.com/?channel=123&category=abc&brand=def&tracking=other_website
如果沒有清晰的規則定義,幾乎是無法知道現在的網站還是不是你優化過的那個樣子的。 根據SEO內容思維導圖,我們得到如下的元信息表格(僅列出幾個字段給大家參考):
• 頁面單元測試
這個“單元測試”是借用了一個研發的術語,原本是測試某一個函數或類的。我是用來測試SEO的一個具體的細節定義。工具也是借用了“Rspec”來二次開發的。這個模塊可以分為兩個環境來運行,production和testing。
其中production的測試,我們叫“回歸測試”,目的是保證之前已經上線的SEO需求,依然好好的呆在那裡,如果報警需要及時修復。
testing環境中,是為了給研發人員做類似TDD(測試驅動開發)用的。它包含了production的回歸測試也包含了testing中新的需求,可以被當做是需求文檔。只要研發人員把這個測試都跑通,就說明你的需求完成了。當這些需求上線後,把測試合並到production一起做回歸測試,這樣就圓滿了。
測試的內容可以涵蓋:元信息中的所有細節,已知鏈接的錨文本, 站內URL, 站外URL, 面包屑, alt, 響應時間, 頁面尺寸,等等。
• 蜘蛛日志監控
有了“元信息”的定義。做蜘蛛日志監控易如反掌。親身經歷的一些現象:
1,全站85%的訪問,response code都是301。
2,蜘蛛抓取量的50%都是抓異步請求(ajax,iframe)的URL。
3,某些類別的頁面平均響應時間超過10秒/次。
4,response code 200的訪問中60%的請求都不是SEO需要的URL。
附圖僅展示一些字段給大家做參考:
針對本文開頭的問題,比較靠譜的提問方式是, “我的某某pattern頁面每天抓取量多少,其中response200的有多少,平均響應時間是多少,主要的內容,SEO元素都正常,沒有作弊的行為,但是這個pattern最近抓取掉了,收錄掉了”。 其實能問這種問題的人,也基本不用提這類問題了。大多數的問題只要足夠細化,就已經迎刃而解了。