核心指令Gzip压缩
原创...大约 2 分钟
Nginx 开启 Gzip 压缩功能, 可以使网站的 css、js 、xml、html 文件在传输时进行压缩,提高访问速度, 进而优化 Nginx 性能!
将响应报⽂发送⾄客户端之前可以启⽤压缩功能,这能够有效地节约带宽,并提⾼响应⾄客户端的速度。Gzip 压缩可以配置 http,server 和 location 模块下。Nginx 开启 Gzip 压缩参数说明:
指令 | 含义 |
---|---|
gzip on | 决定是否开启 gzip 模块,on 表示开启,off 表示关闭; |
gzip_min_length 1k | 设置允许压缩的页面最小字节(从 header 头的 Content-Length 中获取) ,当返回内容大于此值时才会使用 gzip 进行压缩,以 K 为单位,当值为 0 时,所有页面都进行压缩。建议大于 1k |
gzip_buffers 4 16k; | 设置 gzip 申请内存的大小,其作用是按块大小的倍数申请内存空间,param2:int(k) 后面单位是 k。这里设置以 16k 为单位,按照原始数据大小以 16k 为单位的 4 倍申请内存 |
gzip_http_version 1.1; | 识别 http 协议的版本,早起浏览器可能不支持 gzip 自解压,用户会看到乱码 |
gzip_comp_level 2; | 设置 gzip 压缩等级,等级越底压缩速度越快文件压缩比越小,反之速度越慢文件压缩比越大;等级 1-9,最小的压缩最快 但是消耗 cpu |
gzip_types text/plain application /x-javascripttext`/css` `application`/xml ; | 设置需要压缩的 MIME 类型,非设置值不进行压缩,即匹配压缩类型 |
gzip_vary on; | 启用应答头"Vary: Accept-Encoding" |
gzip_proxied off; | nginx 做为反向代理时启用,off(关闭所有代理结果的数据的压缩),expired(启用压缩,如果 header 头中包括"Expires" 头信息),no-cache(启用压缩,header 头中包含"Cache-Control:no-cache" ), no-store(启用压缩,header 头中包含"Cache-Control:no-store" ),private(启用压缩,header 头中包含"Cache-Control:private" ),no_last_modefied(启用压缩,header 头中不包含 "Last-Modified" ),no_etag(启用压缩,如果 header 头中不包含"Etag" 头信息),auth(启用压缩,如果 header 头中包含"Authorization" 头信息) |
gzip_disable msie6; | (IE5.5 和 IE6 SP1 使用 msie6 参数来禁止gzip 压缩 )指定哪些不需要gzip 压缩的浏览器(将和 User-Agents 进行匹配),依赖于 PCRE 库 |
http {
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 9;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php application/javascript application/json;
gzip_disable "MSIE [1-6]\.";
gzip_vary on;
location / {
root html;
index index.html index.htm;
}
}
Powered by Waline v2.15.7