使用Cloudflare提升WordPress效能

cf-web-badges-e-gray甚麼是Cloudflare?

簡單而言,Cloudflare是結合CDN及保安優化的服務,前者是透過Cloudflare於世界各地不同伺服器緩存網站資料以達至提升速度效果,後者為加強網站安全性,甚至提供額外Web Application Firewall及Anti DDOS服務。基本服務是免費的,但進階功能如Web Application Firewall及Anti DDOS等則需要額外收費。

以下教學為透過免費版Cloudflare提升現有Wordpress效能。如果閣下已經設定好Cloudflare Name Server請跳到第三步。
我們可免費為客戶代辦以下設設定,客戶如有需要請電郵到 support@scicube.com 查詢,謝謝

1) 首先閣下需要到 http://www.cloudflare.com 建立一個免費的Cloudflare戶口。

2) 登入後需要在Add site加入閣下域名,完成後需要更新Name Server,如閣下域名經本公司注冊,請電郵聯絡我們安排Name Server更新,一般更新數小時後便會生效。

3) 在域名管理頁面按”Page Rules”

 

Screen Shot 12-14-15 at 09.32 PM

4) 一般而言,將Name Server指向Cloudflare後已經可以提升海外瀏覽速度。Cloudflare會緩存網站大部分的靜態資料(Static Data)如圖片,HTML等,但動態資料(Dynamic Data)如Wordpress文章等並不會進行緩存。這個時候便需要透過Page Rules達成緩存動態資料的效果。

5) Page Rules主要是三段

  1. URL pattern: *域名名稱.com/wp-login.php* (Custom caching: bypass cache)
  2. URL pattern: *域名名稱.com/wp-admin/*.*  (Custom caching: bypass cache)
  3. URL pattern: *域名名稱.com/*.*  (Custom caching: cache everything)
  • Page Rules需要按次序輸入,如果沒有按次序輸入及後可以按住左手邊圖示調整次序。
  • cache everything設定一定要在最底,否則會影響Wordpress後台登入。”*.*” 可以令Cloudflare緩存所有副檔名,這個用法同時適用於特定路徑檔案預計有大量下載的時候。
  • URL pattern在域名名稱前的”*”代表適用於www及non-www的網址連入

Screen Shot 12-14-15 at 07.23 PM

6) 這樣設定完成後可以可提升Wordpress速度,理論上無論是一百甚至幾千人瀏覽閣下Wordpress時,現在只要上傳一個複本到Cloudflare作為緩存再由Cloudflare CDN伺服器分發到便可,大大減低伺服器負荷當網站。但留意,這只是”相對減低”,因為Page Rules只是令Cloudflare 緩存大部份Wordpress的內容而非全部。倘若網站瀏覽量有所提升仍然需要升級到更多資源的服務計劃,如雲主機及獨立主機,甚至Load Balance的方案等。

7) 基本上設定是已經完成,Cloudflare因為Page Rules的設定緩存了Wordpress的內容。但問題來了,當網站內容有更新會因為這樣的設定而導致Clouldflare不懂更新。這個時候,可以使用Cloudflare網站”Caching”內的”Purge Cache”功能清空特定網址的緩存。又或者可以安裝Wordpress的Plugin去自動清空緩存。

8) 在安裝Plugin前,先在Cloudflare頁面內取得API Key以配合使用Cloudflare。

Screen Shot 12-14-15 at 08.35 PM

Screen Shot 12-14-15 at 08.35 PM 001

9) 回到Wordpress後台安裝Plugin,坊間有好幾個類近的Wordpress Plugin,我們這次使用的是”CloudFlare Cache Purge”,安裝後輸入Cloudflare的登入電郵及剛才取得的API Key,還有輸入域名名稱,當剔上”Purge url when a post is updated”,基本上每次更新Wordpress文章後已經可以自動更新緩存,整個設定完成。

Screen Shot 12-14-15 at 09.01 PM