nginx开启gzip

作者: caohaoyu | 来源:发表于2018-08-23 16:12 被阅读10次

    1.开启gzip

    nginx实现资源压缩的原理是通过ngx_http_gzip_module模块拦截请求,并对需要做gzip的类型做gzip压缩,该模块是默认基础的,不需要重新编译,直接开启即可。

    2.参数配置

        #开启和关闭gzip模式
        gzip on|off;
        
        #gizp压缩起点,文件大于1k才进行压缩
        gzip_min_length 1k;
        
        # gzip 压缩级别,1-9,数字越大压缩的越好,也越占用CPU时间
        gzip_comp_level 1;
        
        # 进行压缩的文件类型。
        gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript ;
        
        #nginx对于静态文件的处理模块,开启后会寻找以.gz结尾的文件,直接返回,不会占用cpu进行压缩,如果找不到则不进行压缩
        gzip_static on|off
        
        # 是否在http header中添加Vary: Accept-Encoding,建议开启
        gzip_vary on;
    
        # 设置压缩所需要的缓冲区大小,以4k为单位,如果文件为7k则申请2*4k的缓冲区 
        gzip_buffers 2 4k;
    
        # 设置gzip压缩针对的HTTP协议版本
        gzip_http_version 1.1;
    

    3.检测效果

    1.nginx的response headers中的Content-Encoding是gzip

    2.返回文件大小明显被压缩

    4.检测方法

    1.直接在浏览器通过开发者工具查看请求头、返回头等信息

    2.使用curl命令行curl -I -H"Accept-Encoding: gzip, deflate" "http://www.example.com"

    3.站长工具中的网页Gzip检测

    5.开启失败常规情况

    1.先检查gzip_types中是否包含需要的类型

    2.如果公司存在多层缓存机制,确认每一层都开启了gzip压缩

    3.开启 gzip_static on,确认服务器上是否存在.gz文件

    相关文章

      网友评论

        本文标题:nginx开启gzip

        本文链接:https://www.haomeiwen.com/subject/jtrmiftx.html