之前我們曾經介紹了《PHP頁面gzip壓縮輸出提高頁面訪問速度》,主要通過ob_gzhandler內置函數進行gzip壓縮輸出,其實php本身也提供了開啟整站gzip壓縮輸出的配置方法,主要是通過php.ini配置文件實現開啟或關閉php gzip配置,下面我詳細介紹下具體的PHP gzip壓縮配置方法及注意事項。
准備工作
1、找不到PHP_zlib.dll文件?
自php4.3開始zlib壓縮就已經內置在PHP中了,所以至少Windows環境下是不需要安裝zlib的。
2、安裝搭建PHP運行環境
由於光通過php.ini配置文件開啟gzip配置實現PHP gzip壓縮輸出是不行的的,其需要apache的支持,所以建議安裝搭建PHP+apache+MySQL運行環境。
PHP gzip配置步驟
一、打開PHP.ini配置文件,找到zlib.output_compression = Off,將
zlib.output_compression = Off
;zlib.output_compression_level = -1
修改為
zlib.output_compression = On
zlib.output_compression_level = 6
PHP gzip配置知識點:
1、默認PHP是不開啟zlib整站壓縮輸出的,而是通過對需要壓縮輸出的頁面使用ob_gzhandler函數實現,兩者只能二選一,否則會報錯。
2、zlib.output_compression默認值為Off,你可以將其設置為On,或者output buffer size(默認為4k)
3、zlib.output_compression_level代表壓縮比,默認推薦設置壓縮比值為6,可選范圍為1-9,-1代表關閉PHP zlib(gzip)壓縮
二、保存PHP.ini配置文件,並重啟apache服務器
三、打開apache 配置文件httpd.conf,配置裝載deflate_module
這一步是最關鍵的開啟php gzip壓縮輸出配置步驟,很多網友會說我已經開啟了php.ini配置文件中的php gzip配置怎麼還是沒有實現PHP gzip壓縮,就是因為沒有讓apache裝載deflate_module,方法如下,將
#LoadModule deflate_module modules/mod_deflate.so
去除開頭的#號,並重啟apache即可。
OK,下面看下經過PHP gizp壓縮輸出的頁面大小
經過PHP gzip壓縮輸出配置的頁面大小效果圖
通過上圖我們可以看到phpinfo()函數的輸出頁面原來大小為71.7k,通過配置php gzip,大小被壓縮為23.9k,PHP gzip壓縮的效果還是很可觀的。
至此,通過修改php.ini配置文件實現PHP zlib(gzip)壓縮輸出的配置教程就介紹完了。