過去曾經介紹過 [WordPress] CDN 的新選擇 Google Cloud Storage 使用 Google Cloud 的方案和 [WordPress] 雲端圖片管理架構 – Media Cloud 外掛綜合功能類型的作法來實作 CDN 功能。

近期則又玩了這套 DigitalOcean Spaces Sync 外掛,看名字就知道是搭配 DigitalOcean 的主機相關服務。

DigitalOcean Spaces Sync

此外掛作者並非原創,主要算是 S3 Spaces Sync 這款的分支改版。

這類型 Object Storage 操作上類似 AWS S3 始祖,也是稱為「S3-compatible / S3 相容」服務。所以除了一些標籤更改外,其實內裝大多都還是原本 S3 那款的系統設計。

同為主機競爭對手的 Linode 近期也有推出這樣的服務,但論完整度目前還是 DigitalOcean 比較好,節點比較多。(但穩定度肯定不及 GCP/AWS 就是)

DigitalOcean 的方案偏向套餐,5 美金啟用方案包含 250GB 空間(用多則 $0.02/GB 計算),流量部分 1TB 內免費(用多則 $0.01/GB 計算)。若是沒有全球節點服務需求,這已經很划算了~

申請服務的細節不多說,掛服務省流量的部分可以透過 Cloudflare 來處理,把一組 CDN 網域掛在 DigitalOcean 上,再開 Cloudflare 的 Page Rules 設定快取以及代理模式,就能把不少流量省起來囉!

使用這服務如果是半路才處理,不是一開站就如此架構的話,流程上建議是:

  1. Rclone 直接把 uploads 目錄傳上 DigitalOcean Spaces。
  2. 開啟此外掛,設定好授權 token 與 CDN 路徑、上傳完整路徑,打勾上傳完檔案後本地端不留檔案的設定。
  3. 測試上圖,確保圖片連結都已替換 CDN 路徑後,從主機端移除 uploads 中媒體庫檔案。(不是從網站後台刪除哦)
  4. 完成上傳目錄的解耦合

後記

  1. 網站加速的部分並不是做了 CDN 就一定很有感,主要看網站服務類型,畢竟就是減少了網站主機的媒體部分請求,把請求成本轉嫁其他服務上而已。如果網站本身連基本 PHP 運算請求都不快,做了這架構也不會快到哪!
  2. DigitalOcean Spaces 裡的 CDN 替換網域功能需要搭配 SSL 憑證,要去買一組或是使用 Let's Encrypt 產生一組後搭配 Cloudflare 的也行(推薦)


Share:

作者: Chun

資訊愛好人士。主張「人人都該為了偷懶而進步」。期許自己成為斜槓到變進度條 100% 的年輕人。[//////////____30%_________]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *