文档章节

nginx gzip开启与配置

sluggarddd
 sluggarddd
发布于 2016/04/12 10:58
字数 776
阅读 100
收藏 0
点赞 1
评论 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压缩的简单示例

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

mysoftsky
2013/09/04
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模块启用和配置指令详解

参考一 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
Nginx服务器开启GZip压缩的方法

常用配置片段如下: gzip on; gzipcomplevel 2; # 压缩比例,比例越大,压缩时间越长。默认是1 gzip_types text/css text/javascript; # 哪些文件可以被压缩 gzip_disable "MSIE [1-6]."; # ...

天下杰论
2014/06/20
0
0
Nginx在64位CentOS下gzip无效

在3台32位上安装nginx,不直接配置--with-zlib,直接使用系统的zlib。在配置文件中开启gzip on,查看网页输出gzip均有效果。 但是在两台64位的CentOS上安装nginx,同样的配置方式,gzip就是不...

苏轼
2012/12/14
1K
3
第五章:nginx静态+代理+缓存+负载均衡详解

一、静态资源WEB服务 非服务器动态运行生成的文件 配置语法-文件读取 配置语法-tcp_noposh(sendfile开启时,提高网络传输效率) 配置语法-tcp_nodelay 配置语法-压缩 扩展Nginx压缩模块 ht...

FantJ
01/02
0
0
使用Nginx Upstream 部署 OpenERP

Openerp 6.1 使用werkzeug 作为web服务的框架,性能比之前的cherrypy 有了很大的改善。但无论是 werkzeug 还是cherrypy ,都不是专门的web服务器。通常的做法是在openerp 之前加一个 Nginx、...

wangbuke
2012/07/16
0
3
nginx的详细使用说明(中)

在详细使用说明上里,对nginx的一个部分已经进行了说明。这节开始解析http部分。 在当前我的nginx.conf的配置如下: 可以看到配置项还是非常多的(这是LNMP包自动默认的配置选项)。 1.Incl...

熊猫88
2016/01/04
88
0
Linux下Nginx编译安装

1:以CentOS-6.4安装的基础上进行编译安装nginx: 第一步检查安装gcc gcc-v #检查gcc编译器yum -y install gcc automake autoconf libtool make #安装GCCyum install gcc gcc-c++ #安装C++编...

huangyanxiong
2015/01/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Android Studio 3.0 之后打包apk出现应用未安装问题

1、废话 出现这个问题的原因,并不是只有一个,而是有多个原因,不懂的估计会被搞得一头雾水,下面我列举的是我遇到的几种问题和网友遇到的几种问题,但不一定是全部,也有可能有些莫名其妙的...

她叫我小渝
22分钟前
0
0
前端基础

1. get请求传参长度的误区 误区:我们经常说get请求参数的大小存在限制,而post请求的参数大小是无限制的。 实际上HTTP 协议从未规定 GET/POST 的请求长度限制是多少。对get请求参数的限制是...

wenxingjun
今天
0
0
拦截SQLSERVER的SSL加密通道替换传输过程中的用户名密码实现运维审计(一)

工作准备 •一台SQLSERVER 2005/SQLSERVER 2008服务 •SQLSERVER jdbc驱动程序 •Java开发环境eclipse + jdk1.8 •java反编译工具JD-Core 反编译JDBC分析SQLSERVER客户端与服务器通信原理 SQ...

紅顏為君笑
今天
7
0
jQuery零基础入门——(六)修改DOM结构

《jQuery零基础入门》系列博文是在廖雪峰老师的博文基础上,可能补充了个人的理解和日常遇到的点,用我的理解表述出来,主干出处来自廖雪峰老师的技术分享。 在《零基础入门JavaScript》的时...

JandenMa
今天
0
0
linux mint 1.9 qq 安装

转: https://www.jianshu.com/p/cdc3d03c144d 1. 下载 qq 轻聊版,可在百度搜索后下载 QQ7.9Light.exe 2. 去wine的官网(https://wiki.winehq.org/Ubuntu) 安装 wine . 提醒网页可以切换成中...

Canaan_
今天
0
0
PHP后台运行命令并管理运行程序

php后台运行命令并管理后台运行程序 class ProcessModel{ private $pid; private $command; private $resultToFile = ''; public function __construct($cl=false){......

colin_86
今天
1
0
数据结构与算法4

在此程序中,HighArray类中的find()方法用数据项的值作为参数传递,它的返回值决定是否找到此数据项。 insert()方法向数组下一个空位置放置一个新的数据项。一个名为nElems的字段跟踪记录着...

沉迷于编程的小菜菜
今天
1
1
fiddler安装和基本使用以及代理设置

项目需求 由于开发过程中客户端和服务器数据交互非常频繁,有时候服务端需要知道客户端调用接口传了哪些参数过来,这个时候就需要一个工具可以监听这些接口请求参数,已经接口的响应的数据,这种...

银装素裹
今天
0
0
Python分析《我不是药神》豆瓣评论

读取 Mongo 中的短评数据,进行中文分词 对分词结果取 Top50 生成词云 生成词云效果 看来网上关于 我不是药神 vs 达拉斯 的争论很热啊。关于词频统计就这些,代码中也会完成一些其它的分析任...

猫咪编程
今天
0
0
虚拟机怎么安装vmware tools

https://blog.csdn.net/tjcwt2011/article/details/72638977

AndyZhouX
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部