Mark Ku's Blog
首頁 關於我
捲起袖子動手做 SEO Part's 3 - 來自 Google 的動態渲染工具 Rendertron for SEO
SEO
捲起袖子動手做 SEO Part's 3 - 來自 Google 的動態渲染工具 Rendertron for SEO
Mark Ku
Mark Ku
December 11, 2021
1 min

捲起袖子動手做 SEO Part’s 3 - 來自 Google 的動態渲染工具 Rendertron for SEO

先前提到

現今的動態網站,廣泛的應用到 Javascript 及 Ajax 相關技術,但這些技術對 Google 搜尋引擎的爬蟲並不是這麼的友善,從Google 官方文件指南得知,Google 爬蟲是非常了解 HTML 結構,但在爬取 Javascript 及 Ajax 時仍會有問題,如果要提昇對 Google 爬蟲的友善度,Google 還是建議將內容指向 Html。

[先前的文章]

那麼 Rendertron

Rendertron 是 Google Chrome 團隊 利用 node js 及 Puppeteer 所開發的專案,可以用來解決任何 搜尋引擎無法爬取的動態網站內容。
但進階的情境,虛擬列表及 Lazy load ,及更細部的瀏覽器操作,並不支援,但有開放源原始碼,且蠻好改的,可以自己擴充。

[相關文件] [Github]

Rendertron 運作原理

網頁服務器,依據搜尋引擎BOT的 useragent,將請求轉向 自己架設的 rendertron server ,此時rendertron,有cache 就會使用 cache ,沒有 cache 就會去和啟動 Puppeteer 爬蟲去將網站爬回來。

模擬 google bot 訪問您的網站

https://render-tron.appspot.com/render/您的網站
https://render-tron.appspot.com/render/https://www.letgo.com.tw/

輸入欲渲染的網址

此時己將渲染完的網站回傳給用戶端

接著,我們來下載及啟動 rendertron 服務

// 下載原始碼
git clone https://github.com/GoogleChrome/rendertron.git
// 安裝相關模塊
npm install
// 編譯程式碼
npm run build
// 執行服務
npm run start

配置設定 ngix 設定,將常見搜尋引擎爬蟲的請求轉向 Rendertron 渲染主機

location / {
    try_files $uri @prerender;
}
location @prerender {
    set $prerender 0;
    if ($http_user_agent ~* "googlebot|yahoo|bingbot|baiduspider|yandex|yeti|yodaobot|gigabot|ia_archiver|facebookexternalhit|twitterbot|developers\.google\.com") {
        set $prerender 1;
    }
    if ($args ~ "_escaped_fragment_|prerender=1") {
        set $prerender 1;
    }
    if ($http_user_agent ~ "Prerender") {
        set $prerender 0;
    }
    if ($prerender = 1) {
        rewrite .* /render/$scheme://$host$request_uri? break;
        proxy_pass http://localhost:3000; #You can use our own hosted Rendertron
    }
    if ($prerender = 0) {
        rewrite .* /index.html break;
    }
}

Tags

Mark Ku

Mark Ku

Software Developer

9年以上豐富網站開發經驗,開發過各種網站,電子商務、平台網站、直播系統、POS系統、SEO 優化、金流串接、AI 串接,Infra 出身,帶過幾次團隊,也加入過大團隊一起開發。

Expertise

前端(React)
後端(C#)
網路管理
DevOps
溝通
領導

Social Media

facebook github website

Related Posts

淺談SEO 中的各種連結
淺談SEO 中的各種連結
July 26, 2024
1 min

Quick Links

關於我

Social Media