Nginx启用GZIP压缩网页传输方法

本文详细介绍了HTTP协议中GZIP压缩的工作原理及配置方法。包括如何通过请求头声明支持的压缩算法,服务器如何响应并使用GZIP压缩内容,以及常用的GZIP配置参数,例如开启状态、缓冲区大小、压缩级别等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原理:

浏览器—请求—-> 声明可以接受 gzip压缩 或 deflate压缩 或compress 或 sdch压缩
从http协议的角度看–请求头 声明 acceopt-encoding: gzip deflate sdch (是指压缩算法,其中sdch是google倡导的一种压缩方式,目前支持的服务器尚不多)
服务器–>回应—把内容用gzip方式压缩—->发给浏览器
浏览<—–解码gzip—–接收gzip压缩内容—-

gzip配置的常用参数

参数含义
gzip on/off是否开启gzip
gzip_buffers 32 4K / 16 8K缓冲(压缩在内存中缓冲几块? 每块多大?)
gzip_comp_level [1-9]推荐6 压缩级别(级别越高,压的越小,越浪费CPU计算资源)
gzip_disable正则匹配UA 什么样的Uri不进行gzip
gzip_min_length 200开始压缩的最小长度(再小就不要压缩了,意义不大)
gzip_http_version 1.0/1.1开始压缩的http协议版本(可以不设置,目前几乎全是1.1协议)
gzip_proxied设置请求者代理服务器,该如何缓存内容
gzip_types text/plain application/xml对哪些类型的文件用压缩 如txt,xml,html ,css 文件类型查看conf/mime.types文件
gzip_vary on/off是否传输gzip压缩标志

注意:

图片/mp3这样的二进制文件,不必压缩
因为压缩率比较小, 比如100->80字节,而且压缩也是耗费CPU资源的.
比较小的文件不必压缩,

例子:

server {
listen 80;  #监听端口
server_name localohst;  #监听域名
gzip on; #开启gizip
gzip_buffers 32 4K;#压缩在内存中缓冲32块 每块4K
gzip_comp_level 6 ;#压缩级别 推荐6
gzip_min_length 4000;#开始压缩的最小长度4bit
gzip_types text/css text/xml  apploation/x-javascript;#只对CSS、XML、JS文件进行压缩。 默认压缩text/html 不需要指定,否则报错
location /  {
root /var/www/a.com;  #根目录定位
index index.html;
}
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值