1.使用nginx开启gzip压缩
这里是nginx中的nginx.conf文件的配置
user root;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
server {
listen 90; #nginx的端口
proxy_http_version 1.1;
# 开启gzip
gzip on;
# 启用gzip压缩的最小文件,小于设置值的文件将不会压缩
gzip_min_length 1k;
# gzip 压缩级别,1-9,数字越大压缩的越好,也越占用CPU时间
gzip_comp_level 1;
# 进行压缩的文件类型。javascript有多种形式。其中的值可以在 Nginx的mime.types 文件中找到。
gzip_types text/plain application/javascript application/x-javascript text/css
application/xml text/javascript application/x-httpd-php image/jpeg image/gif
image/png application/vnd.ms-fontobject font/ttf font/opentype font/x-woff
image/svg+xml;
# 是否在http header中添加Vary: Accept-Encoding,建议开启
gzip_vary on;
# 禁用IE 6 gzip
gzip_disable "MSIE [1-6]\.";
# 设置压缩所需要的缓冲区大小
gzip_buffers 32 4k;
# 设置gzip压缩针对的HTTP协议版本
gzip_http_version 1.0;
location / {
index index.html index.htm;
root /usr/local/nginx_project/workcard/; #项目在我服务器上存放路径(切记这里的项目必须让前端以压缩的形式打包)
try_files $uri $uri/ /index.html;
}
}
}
我又在tomcat中放了一个一样的未经压缩的前端项目,来与nginx压缩的比较一下
1.tomcat中未经压缩的
2.nginx中经过gzip压缩
3.观之 文件被压缩了 获取也变快了
2.使用tomcat开启gzip压缩
这里是tomcat的conf中的server.xml的配置
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
useSendfile="false"
compression="on"
noCompressionUserAgents="gozilla, traviata"
compressionMinSize="2400"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/javascript,image/jpeg"
/>
1.这里我简单喵俩句
useSendfile=“false” 在tomcat8.5要加上不然不会生效,应该是useSendfile和compression俩不能同事存在
compress=“on” 开启gzip压缩
noCompressionUserAgents=“gozilla, traviata” 屏蔽这俩浏览器(从没见过)
compressionMinSize=“2400” 默认超过2kb后就开启这个压缩
compressableMimeType 要压缩文件的类型
2.重启tomcat一下看看那个静态文件
3.观之 可以看到 比一开始没开启压缩的tomcat确实变小了 访问也变快了