一般而言,頁面文件開啟gzip壓縮以后,其體積可以減小60%~90%,對于文字類站點,可以節(jié)省下大量的帶寬與用戶等待時間。但是不論是iis還是apache默認(rèn)都只壓縮html類靜態(tài)文件,對于php文件需要模塊配置才可支持(iis7.5中開啟動態(tài)+靜態(tài)壓縮也可以),于是利用php自身功能到達(dá)gzip的效果也成為一項合理的訴求。
網(wǎng)上的教程基本是你抄我來我抄他,不外乎加頭加尾或者自構(gòu)函數(shù)兩種寫法。實際上每個php頁面都要去加代碼——當(dāng)然也可以include引用,不過總顯得略微麻煩。
實際上最簡單的辦法,打開php目錄下的php.ini文件,找到zlib.output_compression = Off,改成zlib.output_compression = On,
再把;zlib.output_compression_level前面的;去掉,后面的-1改成1~5的數(shù)值。這樣便可以實現(xiàn)所有php頁面的gzip效果,不再需要單獨修改網(wǎng)站的php文件——如果站點很多的話,會節(jié)省很多時間。
需要說明的是以下幾點
一、;zlib.output_handler必須保持注釋掉,因為此參數(shù)和前面的設(shè)置沖突——官方的說法。
二、一般情況下緩存是4k(output_buffering = 4096)。
三、zlib.output_compression_level 建議參數(shù)值是1~5,6以實際壓縮效果提升不大,cpu占用卻是幾何增長。
圖1.通過firebug查看請求頭和回應(yīng)頭,實際上gzip效果已經(jīng)顯示
圖2.站長站gzip檢測工具也顯示gzip有效。
新聞熱點
疑難解答