文档章节

nginx gzip开启与配置

sluggarddd
 sluggarddd
发布于 2016/04/12 10:58
字数 776
阅读 134
收藏 0

  

使用gzip对文件进行压缩将大大降低带宽的使用。

常用gzip指令。

可在http块、server块、location块中设置。


gzip 用于开启或者关闭gzip模块

gzip on | off


gzip_buffers  设置gzip压缩文件使用缓存空间的大小,其作用是按块大小的倍数申请内存空间

gzip_buffers number size
#eg: gzip_buffers 16 8k

number 指定Nginx服务器需要向系统申请缓存空间的个数

size 指定每个缓存空间的大小


gzip_comp_level 设置gzip压缩等级,等级越低压缩速度越快文件压缩比越小,反之速度越慢文件压缩比越大,占用的cpu资源也与压缩等级正相关。

gzip_comp_level level
#eg gzip_comp_level 6

等级范围 1-9
默认级别为 1


gzip_min_length 当返回内容大于此值时才会使用gzip进行压缩,当值为0时,所有页面都进行压缩

gzip_min_length length
#eg: gzip_min_length 100 | 10K


gzip_http_version 用于识别http协议的版本,早期的浏览器不支持gzip压缩,用户会看到乱码,所以为了支持前期版本加了此选项,目前此项基本可以忽略

gzip_http_version 1.0 | 1.1


gzip_proxied
Nginx做为反向代理的时候启用,前提是后端服务器返回的响应页头部中,Requests部分包含用于通知代理服务器的Via头域。

gzip_proxied off|expired|no-cache|no-sotre|private|no_last_modified|no_etag|auth|any]
#eg: gzip_proxied any

off – 关闭所有的代理结果数据压缩
expired – 启用压缩,如果header中包含”Expires”头信息
no-cache – 启用压缩,如果header中包含”Cache-Control:no-cache”头信息
no-store – 启用压缩,如果header中包含”Cache-Control:no-store”头信息
private – 启用压缩,如果header中包含”Cache-Control:private”头信息
no_last_modified – 启用压缩,如果header中包含”Last_Modified”头信息
no_etag – 启用压缩,如果header中包含“ETag”头信息
auth – 启用压缩,如果header中包含“Authorization”头信息
any – 无条件压缩所有结果数据


gzip_types
设置需要压缩的MIME类型,非设置值不进行压缩

gzip_types mime-type
#eg: gzip_types application/javascript text/plain application/x-javascript text/css application/xml text/javascript;

对于多数以文本为主的站点来说,文本自身内容占流量的绝大部分。虽然单个文本体积并不算大,但是如果数量众多的话,流量还是相当可观。


gzip_vary

告诉接收方发送的数据经过了压缩处理,开启后的效果是在响应头部添加了Accept-Encoding:gzip,这对于本身不支持gzip压缩的客户端浏览器有用。

gzip_vary on | off
#eg: gzip_vary on


gzip_disable

对于不同类型客户端发起的请求,可选择性开启或者关闭gzip功能。

gzip_disable regex ...;
eg: gzip_disable MSIE [4-6]\.


启动gzip也有可能起到负效果,例如图片本身是经过高度压缩的,所以在对其进行压缩用处不大,并且及其浪费cpu资源。

demo样例

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]\.";


© 著作权归作者所有

共有 人打赏支持
sluggarddd
粉丝 7
博文 14
码字总数 11821
作品 0
程序员
私信 提问
Nginx的Gzip压缩简单配置

ngxhttpgzip_module模块 主要负责Gzip功能的开启和设置,对相应数据进行实时压缩. gzip指令 用于开启Gzip功能 ,默认为off gzip_buffers指令 用于设置Gzip压缩文件使用缓存空间的大小 number指...

期待l
08/07
0
0
优化Laravel网站打开速度

1.关闭debug 打开文件,把设置为. 2.缓存路由和配置 3.composer优化 4.Laravel优化命令 5.使用Laravel缓存 使用Laravel的Cache方法缓存内容,有文件缓存,数据库缓存,redis缓存。 6.使用CDN...

Jimmy
2017/06/27
0
0
Nginx配置gzip压缩的简单示例

本文介绍下,在nginx中配置gzip压缩的简单例子,一段核心的配置节代码,供大家参考。 在nginx中配置gzip压缩很简单,只需要几行代码即可。 使用 gzip 压缩可以降低网站带宽消耗,提升访问速度...

mysoftsky
2013/09/04
0
0
Nginx Gzip模块启用和配置指令详解

参考一 http://www.111cn.net/sys/nginx/69492.htm 参考二 查找nginx安装的路径以及相关安装操作命令 参考三 http://blog.csdn.net/u011078940/article/details/51276765 Nginx的gzip模块是内...

james_laughing
2016/12/23
8
0
nginx 图片文件压缩配置方法

查看ngix编译参考,是否启用了gzip模块,运行命令: 代码如下 复制代码 /path/to/binary/nginx -V (我的nginx在PATH目录里,故命令中可以省略nginx所在的目录),写为nginx -t 即可,下文从略...

抢地主
2017/11/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

NEO 节点介绍

全节点(full nodes)是存储 NEO 区块链全部数据的节点,通过 P2P 的方式与区块链网络连接,在区块链网络中,所有的全节点都是平等的,既充当客户端又充当服务器。 NEO 有两个全节点程序: ...

NEO-FANS
1分钟前
0
0
内网穿透大杀器--EarthWorm

0x00 前言 如果感觉本文对你有帮助,请在文章末尾点个赞,谢谢表哥们支持! 当你在内网渗透,并且拿下一台机器的权限时,你是不是觉得已经算是一次完整的渗透了? 不来一次内网漫游,渗透是不...

刀剑如梦
7分钟前
0
0
PiggyMetrics分布式框架

https://github.com/sqshq/PiggyMetrics

丁建祥
8分钟前
0
0
零距离接触阿里云时序时空数据库TSDB

概述 最近,Amazon新推出了完全托管的时间序列数据库Timestream,可见,各大厂商对未来时间序列数据库的重视与日俱增。 阿里云TSDB是阿里巴巴集团数据库事业部研发的一款高性能分布式时序时空...

阿里云云栖社区
17分钟前
0
0
OkHttpClient封装

import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Map; import java.util.TreeMap; import java.util.Map.Entry; import o......

尘叙缘
18分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部