Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nginx Gzip 功能 #5

Open
dengchengchao opened this issue Dec 14, 2019 · 0 comments
Open

Nginx Gzip 功能 #5

dengchengchao opened this issue Dec 14, 2019 · 0 comments

Comments

@dengchengchao
Copy link
Owner

Nginx Gzip 压缩

  1. 开启 gzip压缩

    gzip on | off;

  2. 设置gzip缓存空间大小

    gzip_buffers [number] [size]

    • number : 指定Nginx服务器需要向系统申请缓存空间的个数
    • size : 每个缓存空间的大小

    默认为number*size=128gzip_buffers 32 4k

  3. 设置gzip压缩程度

    gzip_comp_level [level]

    级别为1到9,1压缩程度最低,效率最高,9表示压缩程度最高,效率最低。默认为1

  4. 设置gzip过滤名单

    gzip_disable [regex]

    某些情况下,有些浏览器不支持gizp压缩,因此可以通过User-Agent正则表达式过滤

    例如: gzip_disable "MSIE [1-6]\." 表示IE6及以下不启动压缩

  5. 设置gzip最低支持的Http协议版本

    gzip_http_version 1.1

    表示Http1.1及以上版本的时候,才使用Gzip压缩,默认为1.1

  6. 设置gzip最小长度

    gzip_min_length [length]

    只有当长度超过此长度,才启用压缩,长度过小的话压缩效果不明显,默认为20

    gzip_min_length 1024

  7. 设置需要压缩的MIME类型

    gzip_types mime-type ...

    某些时候,对于图片,视频,以及超大文件,不建议gzip压缩。因为效果不大,并且消耗CPU

    gzip_types text/plain application/x-javascript text/css text/html application/xml

  8. 设置添加gzip

    gzip_vary on | off

    开启此指令的时候,会在响应数据添加一个头部:Vary:Accept-Encoding

  9. 启用静态压缩

    gzip_static [ on | off | always ]

    • on :开启模块功能
    • off : 关闭模块功能
    • always : 一直发送gzip文件,不检查客户端是否支持压缩

    静态压缩用于发送压缩文件,比如.gz文件。

    同时,静态压缩也支持:gzip_http_version , gzip_disable,gzip_vary

  10. 解压缩指令

    gunzip_static on | off

    此功能主要用于如果客户端不支持Gzip处理,那么Nginx服务器将返回解压后的数据,这样Nginx作为中间层的时候,Nginx和后端的传输可以使用压缩,然后Nginx再进行解压

    同时,gunzip也支持:gunzip_http_version , gunzip_disable,gunzip_vary


以上,基本是所有示例,接下来附带配置示例:

http{
    gzip on;                     #开启gzip
    gzip_min_length 1024;        #gzip最小长度
    gzip_buffers 4 16k;          #缓存区配置
    gzip_comp_level 2;           #压缩级别
    gzip_types text/plain application/x-javascript text/css application/xml;                 #压缩资源类型
    gzip_vary    on;             #启用压缩标志
    gunzip_static on;            #检查预压缩文件
    
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant