之前一直纠结,自己的网站优化做的也挺好,但是加载速度为啥没别人的快?难道是因为服务器带宽太小?觉得不太可能。。。除了这个原因,难道是因为网站图片太多?更不可能!因为我的网站本来就没几个图片啊。。。
直到今天偶然间去爱站网查网站信息,突然看到GZIP检测。。。
心里好生奇怪,这个GZIP检测是个啥东东??果断百度一下,果然发现原因!哈哈。。
关于GZIP的概念,百度是这样解释的:
GZIP最早由Jean-loup Gailly和Mark Adler创建,用于UNⅨ系统的文件压缩。我们在Linux中经常会用到后缀为.gz的文件,它们就是GZIP格式的。现今已经成为Internet 上使用非常普遍的一种数据压缩格式,或者说一种文件格式。
HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来 让用户感受更快的速度。这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的网站时,服务器中的这个功能就将网页内容压缩后传输到来访的 电脑浏览器中显示出来.一般对纯文本内容可压缩到原大小的40%.这样传输就快了,效果就是你点击网址后会很快的显示出来.当然这也会增加服务器的负载. 一般服务器中都安装有这个功能模块的。
好嘛。原来他们的网站加载速度快是因为这个原因!小样,终于被我找到了!!!
接下来就是给自己的服务器配置GZIP压缩。我的服务器用的是tomcat7.0版本的,
其实修改挺简单的,就是找到Tomcat根目录下的conf文件夹,修改conf文件夹下的server.xml 文件,将
<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443"/>
修改为
<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/css,
text/javascript,text/json,application/x-javascript,
application/javascript,application/json"/>
上面红色字体部分是新添加的部分
注意要添加application/javascript,tomcat5用的可能是text/javascript,但tomcat7.0用的是application/javascript,上面说了,我的服务器是tomcat7.0,所以要加上。
解释下上面新加的属性吧:
compression="on" 打开压缩功能
compressionMinSize="2048" 启用压缩的输出内容大小,默认为2KB
noCompressionUserAgents="gozilla, traviata" 对于以下的浏览器,不启用压缩
compressableMimeType="text/html,text/xml,text/plain,text/css,
text/javascript,text/json,application/x-javascript,
application/javascript,application/json" 哪些资源类型需要压缩
怎么查看修改之后是否成功生效呢?
重启tomcat,然后用浏览器访问你重新部署的程序,打开开发者工具,进入Network面板,刷新页面,然后选择一个js文件点击,查看Headers下面的Response Headers,里面会标明Encoding为gzip,那么恭喜你成功了。
下图是在IE11中查看的效果:
下图是在Firefox中的效果:
好啦,关于GZIP就先说这么多。。记得试一试哦