gzip压缩算法,在客户端要支持,在服务端浏览器也要支持该算法。
gzip动态压缩
nginx配置
gzip_buffers:缓冲区大小。
gzip_comp_level:压缩等级,1-9等级越高,压缩速率越高,压缩比也越高,当然消耗cpu资源也越多,建议1-6
gzip_http_version:支持最低的http版本号,目前浏览器基本上都是1.1
gzip_min_length:大于这个配置的值就进行压缩,小于就不进行压缩,建议不要配置的过小。
gzip_proxied:针对代理服务器所做的配置,对上有服务器的heade进行判断,符合相应的条件则进行压缩。设置off和any效果是一样的都是无条件进行压缩。一般我们就把该参数设置成any就可以。
gzip_types:针对具体类型进行压缩,建议多配置一些类型。
gzip_disable:配置哪些浏览器不进行压缩,这里是通过正则表达式进行的匹配,建议配置文件中不出现正则表达式,比较消耗服务器资源。
gzip静态压缩
作用:事先将服务器上的资源文件压缩成gz文件,将压缩包传输到客户端,客户端进行解压
由于该功能不在nginx安装包里,需要我们在编译的时候手动添加该功能-with=http_gzip_static_module
参数:
gzip_static:
on: 当设置成on的时候,回去检查客户端,如果客户端不支持gzip,那么就不会发送压缩包。
off:关闭gzip功能。
always:不管客户端支持或不支持,都进行发送压缩包。
当设置成always时,如果我们客户端不支持压缩包,那么客户端就无法读取接收到的压缩包。就需要配合另一个功能使用
安装;--with-http_gzip_static_module
作用:如果客户端不支持gzip,那么就在发送前将压缩包解开进行发送,并删除服务器上的源文件,保留压缩文件,达到节省磁盘空间的作用。
Content-Encoding:内容的压缩格式
Transfer-Encoding:传输的压缩格式,chunked代表传输过程中一个包一个包的进行传输。