tomcat5.0以后可以配置开启gzip压缩,压缩效率一般都很高,可以通过firebug查看压缩后的网页大小和压缩前进行对比。
优点:不用写filter等代码来实现压缩。
缺点:不如在应用中实现的灵活,不可以有选择的对某些资源压缩,只能按类型进行压缩。但一般情况下,也就够用了。
给大家看看我的配置:server.xml
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" maxThreads ="150" minSpareThreads ="25" maxSpareThreads ="75" enableLookups ="false" acceptCount ="100" disableUploadTimeout ="true" compression="on" compressionMinSize="1024" noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/html,text/javascript,text/css,text/plain,image/jpeg,image/gif" redirectPort="8443" URIEncoding="UTF-8" />
compression="on" 表示开启压缩功能
compressionMinSize="1024" 表示只对1k以上的文件进行压缩
noCompressionUserAgents="gozilla, traviata" 表示对这两种浏览器不开启压缩,估计他们不支持。
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 表示对请求资源的类型进行压缩。如何查看类型,也可以通过firebug查看。如:
可以看到content-Encoding:gzip,说明已经对javascript文件进行了压缩。 源文件压缩前16k,压缩后4k,效率很高啊。
注意:如果文件小于配置的1k,就不会压缩。