四、服务器的gzip压缩
1.ngx_http_gzip_module模块处理的9个指令 在处理时实时压缩
1>gzip on|off 开启或关闭gzip功能
2>gzip_buffers number size 用于设置文件使用缓存空间大小 number为空间个数 size为每个空间大小
3>gzip_comp_level 压缩程度 1-9 默认为1
4>gzip_disable根据客户端的请求 选择性的开启或关闭功能
如gzip_disable MSIE [4-6]\. 表示包含MSIE4 MSIE5 MSIE6的请求 nginx不会进行压缩
5>gzip_http_version 1.0|1.1 默认1.1 表示只有使用1.1版本以上的HTTP协议时 才会进行压缩
6>gzip_min_length 默认20 表示大于20字节的返回值才会被压缩
7>gzip_proxied 在反向代理时有效 是否在后端返回时进行gzip压缩
8>gzip_types text/plain ...表示根据响应页的mime 开启压缩功能
9>gzip_vary on|off 告诉客户端是否使用了压缩处理 默认off IE4会有bug
可以在nginx的配置add_header强制在返回头部添加vary:Accept-Encoding 达到相同的效果
2.ngx_http_gzip_static_module模块处理的指令 主要负责搜索和发送gzip预压缩的数据 并保存在服务器上
1>gzip_static on|off|always 开启或关闭该功能
2>gzip_proxied expired no-cache no-store private auth
3>gzip_vary 开启只给未压缩内容添加Vary:Accept-Encoding头域 而不是所有内容
如果需要给所有响应头加该头域,可通过add_header指令实现
4>该模块是nginx可选模块 如果要使用 必须在nginx配置时添加 —with-http_gzip_static_module指令
3.ngx_http_gunzip_module模块处理指令 对数据输出流进行解压缩
1>gunzip_static on|off 开启或关闭功能 默认开启
2>gunzip_buffers 32 4k 表示分配的缓存空间数量和大小
3>该模块需要配置时添加—with-http_gunzip_module指令
4.gzip压缩功能的使用
1>一般以上配置都是写在http块中 如果某虚拟主机不开启gzip压缩功能 可在server中配置gzip off
2>gzip_disable “MSIE [1-6]\." IE6以下浏览器对gzip的兼容性不好 因此在IE6下不使用gzip功能
3>nginx与其它服务器在http1.0及之前版本 通讯时会有数据压缩问题 为了保存数据正常需要开启静态压缩
gzip_static on; gzip_http_version 1.0;
转载于:https://my.oschina.net/ives/blog/1832817