2019趨勢:JavaScript SEO-上級SEO應該知道哪些?

Photo of author
Written By CMO

玩JS SEO的都是“武痴”
玩JS SEO的都是“武痴”

對於高級SEO來說,需要掌握的知識比SEO入門者要多得多。其中深刻理解搜索引擎與網站服務器的互動是關鍵部分,這裡包含了許多HTTP協議的知識點以及前後端開發的技術。

JavaScript SEO是SEO中的上乘武功

筆者從事SEO近二十年,可以體會到所有上級SEO的難點都在於一些最底層而細節的東西。如果我們把TDK(Title-Description-Keywords)作為SEO中最Low的內容,SEO中的內容行銷部分和外鏈建設作為中下級部分,技術SEO(Technical SEO)作為SEO中中上級的部分,那麼JavaScript對於SEO的影響便在金字塔的頂部。本文,我們僅僅從結論來介紹SEO中的JavaScript到底怎麼玩。

Technical SEO有多重要?聽說最近SearchEngineLand的索引被清空的故事了嗎?
SEO的“段位”,幾乎是每5年一個迭代
SEO的“段位”,幾乎是每5年一個迭代

相對應地有些引擎處在頂部如Google,它更好更聰明地理解你的JS資源,並知道哪些需要運用到渲染中;接下來是Bing,它並不能像Google那樣好地進行JS的支持,據說只對部分網站進行渲染;然後是像Google那樣的引擎,還未支持JS加入渲染,通常只渲染CSS,只是特定於某些負面算法對一些惡意站點進行檢測時才使用部分JS。 (如果你發現access.log中有訪問js的Google蜘蛛,那麼請通過IP驗證其真實性。)

在聽HubSpot One介紹之前,請注意本文全部內容僅僅適用於當下情況。 SEO是發展飛速的行業,今天的不支持並不代表明天一樣不適用。如果你不想花時間聽天書,那麼只要記住這個結論:為了你的網站能最好地普遍地被各個大大小小的搜索引擎所爬行、索引、渲染、排名,那麼請避免使用JavaScript來生成任何網頁中的內容。

JavaScript和(Google)SEO,頂級SEO從業者必須要知道的15點

  1. Googlebot會毫無意外地請求你的js文件。
  2. Googlebot可以包含js和css渲染你的頁面並發現隱藏內容,但並不保證會這麼做。
  3. Googlebot目前使用的是相當於Chrome 41(一個三年前的版本)的一個Headless Browser,而不是最新的內核來進行渲染。
  4. Google把這個Headless Browser成為WRS,Web Rendering Service。
  5. 如果Googlebot發現你的網站相應變慢會減少爬行預算(Crawl Budget),包括減少對js文件的請求。
  6. 如果Googlebot在渲染過程中執行你的腳本並發現消耗太多資源,則會放棄。建議5秒鐘是執行js腳本的上限。
  7. Googlebot由於需要等待索引的文件資源和處理資源會進行“兩波索引”。見下圖:

    先索引,等有機會再看看渲染後有什麼異樣
    先索引,等有機會再看看渲染後有什麼異樣

  8. Google SERP上的cache的頁面只能代表第一波時被緩存的頁面HTML。
  9. js中的鏈接可以被Googlebot發現。但是當js相當複雜時,其中鏈接並不一定能被Googlebot從js腳本中生成。
  10. 所有的js鏈接都不傳遞頁面權重!
  11. Googlebot不會去“點擊”,因此“顯示更多”後通過ajax請求的內容並不會被Google發現。
  12. Onclick屬性必須要在<a>標籤中並且具有href屬性時才能讓Google運行js腳本發現新鏈接。
  13. js渲染出的Canonical鏈接對Googlebot基本無效,可信度低。
  14. js經常伴隨著在URL中使用#(井號),Googlebot在索引過程中會拋棄#後面的內容。
  15. Google再三確認並推薦使用Dynamic Rendering,並不再視其為Cloaking。你可以為Googlebot準備一份已經渲染好的版本。

你以為JavaScript是SEO的最終大Boss? Naive!

在筆者領導和參與的眾多大大小小的SEO項目中,只存在一個失敗的原因:“傲嬌的網站攻城獅們”。

只有你的工程師團隊才能讓你如此歡快地“食屎”
SEO中,只有你的工程師團隊才能讓你如此歡快地“食屎”

如果你覺得下面這些反饋聽起來很耳熟,那麼你一定能體會到為什麼這麼說:

  • 不改。就不改。
  • 影響性能,不改。
  • 沒空改,等空下來。
  • 你怎麼證明非要這麼改?
  • 不是我們的KPI,先放放
  • 怎麼做網站要你教?
  • 你說的都對,你自己改吧。

遺憾的是SEO是數字行銷中和技術部門最緊密聯繫的部分,如果沒有高層管理者的參與並提供優先級,技術SEO和JS SEO很難有所建樹。頂級SEO要掌握的遠比SEO工作本身多得多。唉……