在 http.conf 上面找到
LoadModule deflate_module modules/mod_deflate.so
拿掉註解
接著,在http.conf檔案後面,加上這一段:
<ifmodule mod_deflate.c>
DeflateCompressionLevel 6
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
AddOutputFilter DEFLATE js css
</ifmodule>
這樣的作法可以壓縮一般網頁中會用到的 html、xml、php、css、js 等格式檔案輸出
雖然會佔用掉伺服器處理器的一點點處理器時間
瀏覽者在接收網頁資料時也會消耗極短暫的一點點處理器時間
不過 卻可以大幅減少資料傳輸量,減少網路頻寬被吃掉的情形。
DeflateCompressionLevel 預設是 6 這個數值,以維持耗用處理器效能與網頁壓縮品質的平衡
DeflateCompressionLevel 9 是指壓縮程度的等級,從 1到 9,9 是最高等級。
據了解,這樣做最高可以減少八成大小的傳輸量(看檔案內容而定),最少也能夠節省一半。
至於已經是壓縮過的圖片格式如 jpg,音樂檔案如 mp3、壓縮檔如 zip 之類的,就可以不需要再壓縮了
因為這種檔案你一開放伺服器傳輸時壓縮,處理器時間會跑不完。
建議可用這個網站 Check HTTP Compression 來檢查
根據官方的測試數據,200KB 的網頁依據不同 gzip 等級的壓縮比例為
Gzip level 1 0.593
Gzip level 6 0.586 (預設值)
Gzip level 9 0.585
由以上數據可知,大於 1 以後的壓縮效益是很低的,且會消耗伺服器資源。
因此,他們強烈建議設定成 1,gzip 預設是 6,建議用 1 就好
用 9 對伺服器負載會重,人少沒感覺,人一多就會伺服器負載就重多了。