Nginx的Gzip压缩

一文读懂nginx gzip HTTP中body包体压缩对应Accept-Encoding/Cotent-Encoding头字段。nginx支持对body的gzip压缩,nginx的ngx_http_gzip_module对此有较为精细的控制。 包括: 是否开启gzip压缩 gzip on|off 对何种类型的文件进行压缩: gzip_types 设置多大的文件才启用压缩 gzip_min_length 设置压缩率: gzip_comp_level 查看压缩率: $gzip_ratio 是否插入Vary: Accept-Encoding 阅读详情

Nginx的Gzip压缩

    

Nginx开启Gzip压缩功能, 可以使网站的css、js 、xml、html 文件在传输时进行压缩,提高访问速度, 进而优化Nginx性能!在Nginx配置文件中可以配置Gzip的使用,相关指令可以在http区域
server区域、location区域配置。Nginx可以通过ngx_http_gzip_module模块、ngx_http_gzip_static_module模块和ngx_http_gunzip_module模块对这些指令进行解析和处理。

    
本章主要包括的内容有:

  • Gzip压缩配置指令说明
  • Gzip压缩功能使用
  • Gzip压缩常见问题解决

1、Gzip压缩配置指令说明

  • ngx_http_gzip_module模块指令说明

gzip指令 该指令用于开启关闭Gzip压缩功能, 默认为关闭状态。只有配置了on,gzip功能才有效

gzip <<on | off>>

for example: gzip on

gzip buffers指令 该指令用于设置文件使用的缓存空间大小,number为指定Nginx服务器要向服务器申请的缓存空间的个数,size 每个缓存的空间大小,从0.7版本之后默认情况下size*number的值为128,其中size去系统内存页的大小

gzip buffers <<number>> <<size>>

for example: gzip buffers 32 4k; 

gzip_comp_level指令该指令设定文件压缩等级,包括1~9级,数值越小压缩程度越低。效率最高。花费的时间越少

gzip_comp_level <<level>>

for example: gzip_comp_level 1;

gzip_disable 支持针对不同匹配条件选择项关闭压缩功能,其中regex根据浏览器标志进行设置,支持使用正则表达式

gzip_disable <<regex...>>

for example: gzip_disable MISE [4-6]\.;

gzip_http_version 支持针对不同的http版本设置。早期的浏览器或者http不支持Gzip压缩功能,可能会出现乱码等现象。截止目前大多数客户端都支持Gzip压缩功能,因此选择默认即可

gzip_http_version <<version>>

for example: gzip_http_version  1.0|1.1;

gzip_min_length 指定请求的数据超过某个阈值后才开启Gzip压缩功能,压缩很小的珊瑚橘反而会把数据变大,从而影响性能

gzip_min_length <<size>>

for example: gzip_min_length  1024;

gzip_types 指定压缩的文件类型,一般指定常规文件类型即可。

gzip_types <<types...>>

for example: gzip_types  text/plain;

gzip_vary 设置为开启,服务器返回数据时会在头部带上"Vary:Accept-Encoding"的标识。客户端便可以知道获取到的数据是否已经被压缩,默认为关闭

gzip_vary  <<on | off>>

for example: gzip_vary on;

2、Gzip压缩功能使用

    
前面已经基本将Gzip压缩功能涉及配置指令罗列完毕,接下来针对请求相同的资源文件,比较在开启和关闭Gzip压缩功能两种情况下,数据请求的效率以及花费的时间。

  • 关闭Gzip压缩功能服务器配置文件内容:
worker_processes 1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /data/software/nginx/html/dist;
            index  index.html index.htm;
        }
    }
}

在谷歌浏览器请求所有资源返回的截图:

 

  • 开启Gzip压缩功能服务器配置文件内容:
worker_processes 1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;
    sendfile        on;
    keepalive_timeout  65;


    #开启gzip压缩功能
    gzip on;
    gzip_min_length 1024;
    gzip_buffers 4 16k;
    gzip_comp_level 2;
    gzip_types *;
    gzip_vary on;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /data/software/nginx/html/dist;
            index  index.html index.htm;
        }
    }
}

在谷歌浏览器请求所有资源返回的截图:

 

对比红线线圈中的文件,花费的时间基本减少一半以上。综合来讲,对于大文件来讲,开启Gzip压缩功能确实大大提高了服务器的性能,可以有更好的用户体验。本次测试只是将该功能设置在http区域块,当然还可以设置在server区域、location区域。更多的测试这里不再一一列举。

Nginx性能优化功能- Gzip压缩(大幅度提高页面加载速度)   Nginx开启Gzip压缩功能, 可以使网站的css、js 、xml、html 文件在传输时进行压缩,提高访问速度, 进而优化Nginx性能!  Web网站上的图片,视频等其它多媒体文件以及大文件,因为压缩效果不好,所以对于图片没有必要支压缩,如果想要优化,可以图片的生命周期设置长一点,让客户端来缓存。 开启Gzip功能后,Nginx服务器会根据配置的策略对发送的内容, 如css、js、xml... 阅读详情

相关推荐

在 Nginx 中实现 Gzip 压缩与解压:让 Web 服务更轻盈

通过本文的介绍,相信你已经掌握了如何在 Nginx 中配置 Gzip 压缩与解压。无论是提高网站的加载速度,还是节省带宽资源,Gzip 压缩都是一个值得采用的技术。继续深入研究,你会发现更多优化 Web 性能的方法!

java专栏 1740

nginx配置gzip压缩,优化传输效率,加快页面访问速度

Nginx的gzip功能是用于压缩HTTP响应内容的功能。当启用gzip时,在发送给客户端之前,Nginx会将响应内容压缩以减小其大小。这样可以减少数据传输的带宽消耗和响应时间,提高网站的性能和速度。启用gzip功能可以在Nginx配置文件中进行设置。通过在配置中添加gzip相关参数,可以指定要压缩的响应内容类型、压缩级别以及开启或关闭gzip功能等。具体来说,gzip减小文件大小:通过对响应内容进行压缩,可以显著减小文件的大小,减少数据传输所需的带宽。

jieyucx的博客 1万+

“三进制”bonsai27b+NInfer=6g显存闪电侠(token真的自由了!)

本文将1.58-bit三元大模型Bonsai27B成功移植至NInfer推理引擎,并在RTX 4080 SUPER上实现100+ token/s的极速推理。通过自研补丁扩展NInfer支持Ada架构与三元量化格式,解决激活布局、行置换等关键bug,实测PPL 6.445,单流吞吐达96.7–130.8 t/s,20题基准得分16/20。附完整复现包(含文档、工具、源码补丁),零权重分发,助力垃圾显卡跑通27B级模型。

shensanshu的博客 1万+

nginx开启Gzip压缩

启用Gzip压缩功能, 可以使网站的css、js 、xml、html 等静态资源在传输时进行压缩,经过Gzip压缩后资源可以变为原来的30%甚至更小,尽管这样会消耗一定的cpu资源,但是会节约大量的出口带宽来。:图片如jpg、png文件本身就会有压缩,所以就算开启gzip后,压缩前和压缩后大小没有多大区别,所以开启了反而会白白的浪费CPU资源。Gzip 的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后解压并解析。而大文件资源会消耗大量的cpu资源,且不一定有明显的效果。

justlpf的专栏 3834

ANSYS 2026 R1 Windows系统安装避坑指南:环境配置、模块部署与许可证实战

ANSYS作为主流CAE仿真平台,其安装部署已远超传统软件范畴,演变为涉及操作系统底层、GPU驱动兼容性、许可证微服务架构和统一缓存机制的系统工程。理解ANSYS安装原理,需从Windows 11 UEFI安全启动要求、DirectX 12 Ultimate图形栈依赖、gRPC架构的License Manager端口动态分配等核心机制切入;技术价值在于保障HFSS GPU加速、Fluent MPI并行稳定性及Workbench多模块协同可靠性;典型应用场景涵盖高校仿真实验室升级、工业设计院所平台重建及高性能

weixin_29251337的博客 1388

数据库崩溃恢复机制:REDO日志与UNDO日志详解

在数据库管理系统中,事务的持久性和一致性是至关重要的。为了保证在系统崩溃或发生故障时数据不会丢失,数据库引入了恢复机制。其中,REDO日志和UNDO日志是两种关键的恢复技术。本文将详细描述这两种日志的作用、工作原理以及它们在数据库崩溃恢复中的应用。

My_wife_QBL的博客 1408

nginx配置gzip压缩

nginx配置gzip压缩 一、配置参数的详细介绍: https://www.jb51.net/article/54338.htm 二、大众的参数配置如下: #开启gzip压缩 gzip on; #http的协议版本 gzip_http_version 1.0; #IE版本1-6不支持gzip压缩,关闭 gzip_disable 'MSIE[1-6]...

小不鸣的博客 1万+

《C语言小游戏之贪吃蛇程序代码》

//为广大编程游戏爱好者提供一个参考的游戏源代码#include&lt;stdio.h&gt;#include&lt;conio.h&gt;#include&lt;windows.h&gt;#include&lt;time.h&gt;#define framex 5#define framey 5#define wide 20#define high 20int i,j,a[2];//将光标移动到...

qq_42052821的博客 2万+

Nginx的Gzip压缩功能

Nginx的Gzip压缩功能 Gzip模块支持的配置指令 ngx_http_gzip_module模块 ngx_http_gzip_module模块主要负责Gzip功能的开启和设置,对响应数据进行在线实时压缩。 指令 值 作用 gzip on |off on=启用Gzip功能,off=不启用Gzip功能 gzip_buffers number size Gzip压缩文件使用缓...

LeeGene的博客 1705

智慧楼宇解决方案-全套大合集

智慧楼宇解决方案,楼宇能耗-环境-设备统一管控解决方案。

byte58的博客 2590

PPO算法详解:基于CartPole-v1的强化学习实现

PPO算法详解:基于CartPole-v1的强化学习实现

m0_54720701的博客 863

nginx - 开启 gzip 压缩

本文介绍了在Vue3项目中开启Gzip压缩的两种方法:服务器端和客户端压缩。服务器端通过Nginx配置gzip on及相关参数实现动态压缩;客户端使用vite-plugin-compression插件在构建时生成.gz文件,配合Nginx的gzip_static on直接返回压缩文件。文章对比了两种方式的优缺点,建议小型项目使用Nginx动态压缩,高并发项目采用构建时压缩以降低服务器负载。同时解答了常见配置问题,包括Nginx作用域规则和gzip_static的工作机制。通过合理配置可显著提升前端资源加载速

尽日寻春不见春,芒鞋踏遍陇头云。归来笑拈梅花嗅,春在枝头已十分。 1309

2024高校网络安全管理运维赛题目--复现+题目+wp

官方writeup集思广益比较好的备份。

书山有路勤为径,学海无涯苦作舟 1319

nginx:Nginx的gzip压缩介绍

在超大规模分布式系统中,像gzip压缩这样的基础功能往往隐藏着深度的优化空间。最佳的gzip配置会随业务形态变化(短视频vs电商)需要建立实时的压缩率/CPU消耗监控大盘客户端碎片化问题远比想象中复杂建议工程师们建立自己的性能基准测试套件,定期验证不同配置组合的效果。记住:没有放之四海皆准的最优配置,只有最适合当前业务场景的权衡选择。

weixin_43290370的博客 2200

CKA-CN考试之路----1

后的的任意位置,但-n 和autoscale 必须是相连的.后面不再对命名空间部分做解释了.说明配置正确,如果无法保存退出,再次检查对齐.不用怀疑一定是复制的时候少了字母或者对齐出错.运行以下命令确认红色箭头的值和题目要求是否一致。将文档中的内容复制并粘贴到对应位置.,后续不再提醒yaml的对齐。确认脚本check1.sh。

Q先生 606

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

nginx 开启gzip压缩

一、背景介绍        历史遗留问题,在项目创建初期前端力量薄弱,网站大部分image、js、css与业务应用存放在一起,未上传到CDN中,最终导致网站访问缓慢,经过排查由于静态资源大量消耗带宽。接下来介绍通过nginx的gzip对静态资源进行压缩,减少带宽消耗。 二、gzip        gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,用.gz结尾      ...

TimerBin的博客 1843

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

nginx gzip 压缩

这篇文章主要说下 使用nginx gzip 压缩来提升网站响应速度。 先看一下,这里我的一个示例网站,在没有启用nginx 压缩前的一个相应速度。 注:这是一个页游网站开源项目,仅用于学习使用。可以看到整个网站内容加载出来花了不少时间。 先附上nginx gzip 压缩的官方文档地址:http://nginx.org/en/docs/http/ngx_http_gzip_module....

小木兮子 903

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【Nginx】nginx的gzip压缩

gzip压缩 网站中会包含很多的静态文件,比如图片、脚本、样式等,而这些css/js可能本很比较大,name网络传输中会比较慢,从而导致网站的渲染速度。因此nginx提供了一种Gzip的压缩优化手段。 gzip配置的常用参数: gzip on|off; #是否开启gzip gzip_buffers 32 4K| 16 8K #缓冲(压缩在内存中缓冲几块? 每块多大?) gzip_co...

千千 508

Nginx 配置 gzip 压缩

随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢? gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用户浏览页面的时候速度会块得多。gzip的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后浏览器解压并解析。浏览器那里不

grhlove123的专栏 7141

关于nginx的gzip压缩

客户端接收后再解压,如此一来,大大缩短了数据传输时间,提升了网页加载速度,尤其在网络带宽有限的情况下,效果更为显著。命令行工具:使用 curl 命令也可以验证,例如 curl -I -H "Accept-Encoding: gzip" http://yourwebsite.com ,如果返回的头信息中包含 Content-Encoding: gzip ,则证明Gzip已开启。gzip_comp_level:设置压缩级别。级别从1到9,级别越高,压缩后的文件体积越小,但服务器压缩时消耗的CPU资源也越多。

xbwsh的博客 540

nginx开通gzip压缩传输文件

文件大小缩小了一倍多,效果非常明显

devops 4181

Nginx资料之gzip压缩

nginx服务器的gzip压缩配置,主要是由ngx_http_gzip_module模块处理的9个指令实现的,负责Gzip功能的开启和设置,对响应的数据进行在线实时压缩。 ◆ 配置指令详细注释 1、gzip on|off : 开启或者关闭gzip功能 2、gzip_buffers 32 4k | 16 8k 设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流。 例如 4 8k 代表以8k为...

宅羽的博客 1326

Nginx的Gzip压缩配置

要想提高页面加载速度,配置压缩是必不可少的。项目中的一些大的库或者图片等等,通过压缩,体积能减少40%或者更多。最直观的体验就是请求时间大幅降低。 刚开始 我的页面加载了两个动画库,所以请求速度很慢很慢,导致页面阻塞,白屏时间过长,如下: 可以看到,three.min.js 这个文件,加载时间居然使用了 3.04s !!! 是导致白屏的罪魁祸首,所以要解决掉 解决方法 打开 Nginx 服务器...

Kevinblant的博客 416

Nginx开启Gzip压缩

1、Vim打开Nginx配置文件 vim/usr/local/nginx/conf/nginx.conf 2、找到如下一段,进行修改 gzipon; gzip_min_length1k; gzip_buffers416k; #gzip_http_version...

chunchi6146的博客 177

Nginx动态压缩gzip

要压缩哪个网站就在相对的网站下开启gzip模块 在nginx.conf中设置gzip on;# 开启gzip压缩# 设置缓冲区大小# 设置压缩等级 1-9# 禁止哪些浏览器不使用压缩# 设置压缩所需要的最低的http版本。# 设置响应的数据最小限制,在这个限制之后再回进行压缩# 增加一个header ,适用于老的浏览器 Vary:Accept-Encoding# 无条件启动压缩# 哪些mime类型的文件进行压缩gzip_types。

weixin_43942414的博客 913
上一篇: Nginx基本配置
下一篇: 不要只会 @Scheduled 启动定时任务,试试 SchedulingConfigurer,动态修改执行周期
skystep
博客等级 码龄4年 9粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值