• Nginx开启gzip压缩功能


    在Nginx安装完成之后,我们可以开启Gzip压缩功能,这里Nginx默认只能对text/html类型的文件进行压缩。下面的指令为开启Gzip的指令:

    gzip on;
    gzip_http_version 1.0;
    gzip_disable "MSIE [1-6].";
    gzip_types text/plain application/x-javascript text/css text/javascript;

    如果要能够是Nginx开启图片压缩功能,在配置文件中添加如下代码:

    gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php image/jpeg image/gif image/png;

    这里需要注意一下:

    1.在gzip_http_version的默认值是1.1,就是说对HTTP/1.1协议的请求才会进行gzip压缩。
    如果使用了proxy_pass进行反向代理,那么nginx和后端的upstream server之间是用HTTP/1.0协议通信的
    如果使用nginx通过反向代理做Cache Server,前端的nginx没有开启gzip,且后端的nginx上未设置gzip_http_version为1.0,那么Cache的url将不会被gzip压缩。

    2.gzip_disable的设置是禁用IE6的gzip压缩
    IE6的某些版本对gzip的压缩支持不是很好,会造成页面的假死。
    对img进行gzip后会造成IE6的假死,把对img的gzip压缩去掉后就正常了。
    为了确保其它的IE6版本不出问题,所以加上了gzip_disable配置项。

    gzip_min_length 1000;

    设置允许压缩的页面最小字节数,页面字节数从header头中的Content-Length中进行获取。

    默认值是0,不管页面多大都压缩。
    建议设置成大于1k的字节数,小于1k可能会越压越大。 即: gzip_min_length 1024

    gzip_proxied expired no-cache no-store private auth;

    Nginx作为反向代理的时候启用,开启或者关闭后端服务器返回的结果,匹配的前提是后端服务器必须要返回包含”Via”的 header头。

    自用版如下

    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 application/x-httpd-php image/jpeg image/gif image/png;  
    gzip_vary on; 
    gzip_disable "MSIE [1-6].";
  • 相关阅读:
    手动档和自动档
    关于目标:骑行里程破万的感想
    JavaScript基础学习-iterable
    第一个mybatisplus
    MAVEN安装配置
    List和ArrayList的区别
    mysql安装
    Nginx的命令
    Windows Server 2008/2012/2016允许多个用户同时远程桌面
    soapui模拟桩-4 将模拟桩打包成war包
  • 原文地址:https://www.cnblogs.com/walter371/p/4116441.html
Copyright © 2020-2023  润新知