为什么要用
HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求服务器对应资源后,从服务器端将资源文件压缩,再输出到客户端,由客户端的浏览器负责解压缩并浏览。相对于普通的浏览过程HTML ,CSS,Javascript , Text ,它可以节省40%左右的流量。更为重要的是,它可以对动态生成的,包括CGI、PHP , JSP , ASP , Servlet,SHTML等输出的网页也能进行压缩,压缩效率也很高。
如何使用
一、我们可以通过修改tomcat的配置来启用gzip压缩
首先找到tomcat的安装路径找到conf–打开server.xml文件,找到Connector 节点
<Connector
connectionTimeout="20000" port="3667" protocol="HTTP/1.1" redirectPort="8443"
compression="on"
compressionMinSize="50"
noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/xml"/>
compression=”on” 打开压缩功能
compressionMinSize=”50” 启用压缩的输出内容大小,默认为(2048)2KB
noCompressionUserAgents=”gozilla, traviata” 对于以下的浏览器,不启用压缩
compressableMimeType=”text/html,text/xml,text/javascript,text/css,text/plain” 哪些资源类型需要压缩
二、对于嵌入式的服务器来说,例如我们项目中使用的是springboot进行开发的
只需要在application.properties文件中配置即可:
#gzip数据压缩
server.compression.enabled=true
server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain
如何查询是否开启成功
点击f12查看,当出现Content-Encoding:gzip时,证明开启成功!
效果如何
图一是未开启gzip压缩,下载完成为3.48s,文件大小大概为2M
图二是开启gzip压缩后,同样的文件只需要72.15ms,飞一般的感觉有木有!!!