Nginx gzip压缩提升性能

gzip是GNUzip的缩写,最早用于UNIX系统的文件压缩。

HTTP协议上的gzip编码是一种用来改进web应用程序性能的技术,web服务器和客户端(浏览器)必须共同支持gzip。

目前主流的浏览器,Chrome,firefox,IE等都支持该协议。

常见的服务器如Apache,Nginx,IIS同样支持gzip。

gzip压缩比率在3到10倍左右,可以大大节省服务器的网络带宽。

而在实际应用中,并不是对所有文件进行压缩,通常只是压缩静态文件。

配置

gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 4 8k;
gzip_min_length 1k; 
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

说明

# 开启gzip压缩
gzip on; 

# 低版本兼容
gzip_disable "msie6"; 

# Nginx作为反向代理的时候启用,允许或者禁止压缩基于请求和响应的响应流。
# 我们设置为any,意味着将会压缩所有的请求
gzip_proxied any; 

# 告诉nginx在压缩资源之前,先查找是否有预先gzip处理过的资源
gzip_static on; 

# 设置对数据启用压缩的最少字节数,建议设置成大于1k的字节数,小于1k可能会越压越大。
gzip_min_length 1024; 

# 压缩级别,1-10,越高越消耗CPU,但是压缩越好(传输快但比较消耗cpu)
# 默认值: gzip_comp_level 1
gzip_comp_level 6; 

# 设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流。
# 4 4k 代表以4k为单位,按照原始数据大小以4k为单位的4倍申请内存。 
# 4 8k 代表以8k为单位,按照原始数据大小以8k为单位的4倍申请内存。
gzip_buffers 4 4k/8k;

# 识别http的协议版本,现在的浏览器基本都支持gzip解压。
# 可以不用设这个值,保持系统默认即可。
gzip_http_version 1.1;

# 设置需要压缩的数据格式
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; 

优化效果

压缩前

gzip before

压缩后

gzip after

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值