复制代码 代码如下:
 
LoadModule headers_module modules/mod_headers.so 
LoadModule deflate_module modules/mod_deflate.so 
复制代码 代码如下:
 
DeflateCompressionLevel 3 
AddOutputFilter DEFLATE html xml php js css 
<LOCATION /> 
SetOutputFilter DEFLATE 
BrowserMatch ^Mozilla/4 gzip-only-text/html 
BrowserMatch ^Mozilla/4/.0[678] no-gzip 
BrowserMatch /bMSIE !no-gzip !gzip-only-text/html 
SetEnvIfNoCase Request_URI //.(?:gif|jpe?g|png)$ no-gzip dont-vary 
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary 
SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary 
Header append Vary User-Agent env=!dont-vary #对代理的设置 
</LOCATION> 
下面二个测试网站
测试数据对css
Original Size: 44 KB
Gzipped Size: 10 KB
Data Savings: 77.27%
测试数据js
Original Size: 6 KB
Gzipped Size: 2 KB
Data Savings: 66.67%
测试数据php
Original Size: 62 KB
Gzipped Size: 15 KB
Data Savings: 75.81% 
上面只是随机拿的几个数据,看的出来,使用了gzip压缩后文件小多了.
另外讲一下,有关squid对gzip的处理 
在squid中,对同一个URL只保留一份缓存。对于如果不同browser(是否支持压缩)如果频繁交替访问,例如:对某个cache住的目标,一个http/1.0请求可能会导致squid强制更新其缓存。但接下来的另一个http/1.1请求又会导致squid再次更新缓存。这样那squid缓存数据就要频繁更新,这就极大的降低了cache命中率。
不过还好,现实环境中不支持压缩的browser毕竟是很少的情况,所以对于缓存命中率的降低很有限. 
新闻热点
疑难解答