以前WordPress在控制台的設定頁面當中有啟動Gzip的相關選項,不曉得為何在其中一次改版被拿掉了,不過可以透過php函數呼叫來開啟Gzip。萬一主機不允許使用Gzip,或是遇到瀏覽器在瀏覽以Gzip壓縮的網頁時會跳出下載檔案的提示視窗,試試另一種網頁壓縮方式zlib。

先以php探針確認伺服器是否支援zlib,在zlib support的部份必須是enable。

[php]<?php phpinfo(); ?>[/php]

編輯WordPress網站根目錄的index.php(不是theme下的index.php),加入一段php程式

[php]//zlib compress
ini_set(‘zlib.output_compression’, ‘On’);
ini_set(‘zlib.output_compression_level’, ‘5’);[/php]

compression_level的數字表示壓縮等級,範圍是1到9,壓縮等級越高網頁壓縮越小,但同時消耗主機資源也越多。當壓縮等級高過某個程度以上每一級差異就會越來越小,建議調整到適合就好。

舊的瀏覽器(例如IE6)不支援網頁壓縮,所以稍微修改一下。

[php]if(ereg(‘gzip’,$_SERVER[‘HTTP_ACCEPT_ENCODING’])) {
//zlib compress
ini_set(‘zlib.output_compression’, ‘On’);
ini_set(‘zlib.output_compression_level’, ‘5’);
} else {
//瀏覽器不支援Gzip,輸出其它內容
}[/php]

一般支援Gzip的瀏覽器也會支援zlib,當瀏覽器支援Gzip才執行zlib壓縮,不支援就跳過。

完成後可以到這裡測試一下是否成功。

參考資料:
Compress WordPress output and speed your blog’s load speed
How To Optimize Your Site With GZIP Compression
不用外掛,直接啟動WordPress的Gzip網頁壓縮

[Apache] 壓縮你的網頁 – mod_deflate/mod_gzip、ob_gzhandler、zlib

最後更新日期: 2020/09/21

喜歡這篇文章?立刻分享給朋友!