GZIP压缩就是对数据进行压缩,使其变得更小,节省硬盘资源,在传输的时候对数据进行格gzip编码为了减少中间过程流量的传输,缩短数据交互的时间,提升用户体验,而我们可以在tomcat,nginx,SpringBoot中启动gzip压缩。
1.Spring Boot 启用Gzip压缩
在application.properties里启用压缩,并设置压缩支持的格式
server.compression.enabled=true
server.compression.min-response-size=2048 #默认仅会压缩2048字节以上的内容
server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain
在application.yml里启用压缩,并设置压缩支持的格式
server:
compression:
enabled: true
min-response-size: 2048
mime-types:
- image/png
- image/jpeg
- image/jpg
- text/html
- application/javascript
- text/css
- application/octet-stream
- application/json
2.tomcat启用Gzip压缩
版本要求:Tomcat5.0以上。 修改%TOMCAT_HOME%/conf/server.xml,修订节点如下:
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,
application/javascript,text/css,text/plain,text/json">
参数说明:
1、compression=”on” 开启压缩。可选值:”on”开启,”off”关闭,”force”任何情况都开启。
2、compressionMinSize=”2048”大于2KB的文件才进行压缩。用于指定压缩的最小数据大小,单位B,默认2048B。
3、noCompressionUserAgents=”gozilla, traviata”,对于这两种浏览器,不进行压缩。
4 compressableMimeType=”text/html,text/xml,application/javascript,text/css,text/plain,text/json”会被压缩的MIME类型列表,多个逗号隔,表明支持html、xml、js、css、json等文件格式的压缩。
3.nginx启用Gzip压缩
Vim打开Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
找到如下一段,进行修改
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
#gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary off;
gzip_disable "MSIE [1-6]\.";
参数说明:
第1行:开启Gzip
第2行:不压缩临界值,大于1K的才压缩,一般不用改
第3行:buffer,不用改
第4行:用了反向代理的话,末端通信是HTTP/1.0,有需求的应该也不用看我这科普文了;有这句的话注释了就行了,默认是HTTP/1.1
第5行:压缩级别,1-10,数字越大压缩的越好,时间也越长.
第6行:进行压缩的文件类型,缺啥补啥就行了,JavaScript有两种写法。
第7行:跟Squid等缓存服务有关,on的话会在Header里增加”Vary: Accept-Encoding”,我不需要这玩意,自己对照情况看着办吧
第8行:IE6对Gzip不怎么友好,不给它Gzip了
本网站的压缩:
原创来源:滴一盘技术