Eswlnk Blog Eswlnk Blog
  • 资源
    • 精彩视频
    • 破解专区
      • WHMCS
      • WordPress主题
      • WordPress插件
    • 其他分享
    • 极惠VPS
    • PDF资源
  • 关于我
    • 论文阅读
    • 关于本站
    • 通知
    • 左邻右舍
    • 玩物志趣
    • 日志
    • 专题
  • 热议话题
    • 游戏资讯
  • 红黑
    • 渗透分析
    • 攻防对抗
    • 代码发布
  • 自主研发
    • 知识库
    • 插件
      • ToolBox
      • HotSpot AI 热点创作
    • 区块
    • 快乐屋
    • 卡密
  • 乱步
    • 文章榜单
    • 热门标签
  • 问答中心反馈
  • 注册
  • 登录
首页 › 日志 › 「日志记录」深入理解宝塔Nginx配置中的br和gzip处理方式

「日志记录」深入理解宝塔Nginx配置中的br和gzip处理方式

Eswlnk的头像
Eswlnk
2023-12-02 22:25:34
「日志记录」深入理解宝塔Nginx配置中的br和gzip处理方式-Eswlnk Blog
智能摘要 AI
本文介绍了宝塔面板中Nginx配置中br和gzip的优化方法。首先,作者针对全局Nginx配置提出了一种简化方案,通过注释掉不必要的代码避免在无相关文件时触发动态压缩。接着,在网站Nginx配置中增加了特定规则,优先尝试返回br或gz格式的文件,若未找到则返回原始文件。文中还提到,浏览器与操作系统在文件大小计算上的差异会导致显示大小略有不同。此外,作者建议通过检查文件头信息中的Last-Modified字段来验证配置的有效性。通过这些措施,可以有效提升网站性能并解决配置中的潜在问题。

前言

最近深入研究了宝塔面板中Nginx配置中的br和gzip处理方式,对于这两种压缩处理的推荐逻辑有了更深刻的理解。在这篇博客中,我将分享我的配置经验,以及解决其中一些问题的简便方法。

全局Nginx配置

首先,让我们看一下全局Nginx配置,这是一套与宝塔官方相近的设置。然而,这样的配置存在一个小问题,当本地既没有br文件又没有gz文件时,并不会直接返回源文件,而是触发了br的动态压缩处理。为了解决这个问题,我提供了一种简单而直接的方法,将对文件的处理全部注释掉。具体如下:

gzip on;
gzip_static on;
gzip_min_length  1k;
gzip_buffers     4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied   expired no-cache no-store private auth;
gzip_disable   "MSIE [1-6]\.";

# brotli
brotli on;
brotli_static on;   
brotli_comp_level 1;
brotli_buffers 16 8k;
brotli_min_length 20;
brotli_types text/xml text/plain text/css application/javascript application/x-javascript application/rss+xml text/javascript image/tiff image/svg+xml application/json application/xml;
「日志记录」深入理解宝塔Nginx配置中的br和gzip处理方式-Eswlnk Blog

网站Nginx配置

接着,在网站的Nginx配置中,我们需要添加以下内容:

location ~* \.(js|css)$ {
    root /path/to/files;
    try_files $uri.br $uri.gz $uri =404;
}

这样配置后,当用户访问js和css资源时,会依次尝试br、gz,如果都没有则返回源文件。

「日志记录」深入理解宝塔Nginx配置中的br和gzip处理方式-Eswlnk Blog

测试

在测试过程中,我们发现浏览器中实际返回的资源大小和本地文件大小存在细微差异。这是由于Windows以1024字节(二进制)计算文件大小,而浏览器以1000字节(十进制)计算,导致了浏览器显示的文件大小稍微大一些。通过一个645kb的br文件的例子,我们可以进行如下换算:

总字节数:661389

浏览器展示大小:661389 / 1000 = 661.389 ≈ 662kb

「日志记录」深入理解宝塔Nginx配置中的br和gzip处理方式-Eswlnk Blog

可以看到,浏览器确实是以十进制计算,并且采用的是向上取整的方式。除了查看字节数确认配置是否生效外,我们还可以通过查看文件头信息中的Last-Modified字段来验证配置的修改时间。需要注意的是,头信息的Last-Modified字段时间是UTC时间,可以通过JavaScript的Date对象将其转换为本地时间进行比对。

本站默认网盘访问密码:1166
本站默认网盘访问密码:1166
声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
brgziplinuxNginx宝塔运维
1
0
Eswlnk的头像
Eswlnk
一个有点倒霉的研究牲站长
赞赏
「开发记录」Vite开发中的烦恼:vant组件自动引入导致的二次构建问题
上一篇
「日志记录」有关部分域名DNS劫持日志记录分析
下一篇

评论 (0)

请登录以参与评论
现在登录
    发表评论

猜你喜欢

  • 「漏洞资讯」CVE-2025-12914:宝塔面板曝出注入漏洞
  • 「日志」IG无缘S15总决赛
  • 来自谷歌27岁的生日涂鸦
  • 事件记录:国内网络故障情况
  • 科研记录:ecCodes处理grib文件问题
Eswlnk的头像

Eswlnk

一个有点倒霉的研究牲站长
1108
文章
319
评论
679
获赞

随便看看

「日志记录」GitLab 升级后的 HTTPS 配置之坑
2024-07-10 19:15:35
「日志记录」Cloudflare崩溃无法进入控制台
2023-11-03 1:44:39
「安全通知」:宝塔面板又爆出新漏洞,某网5btc出售
2020-12-28 13:45:54

文章目录

专题展示

WordPress53

工程实践37

热门标签

360 AI API CDN java linux Nginx PDF PHP python SEO Windows WordPress 云服务器 云服务器知识 代码 免费 安全 安卓 工具 开发日志 微信 微软 手机 插件 攻防 攻防对抗 教程 日志 渗透分析 源码 漏洞 电脑 破解 系统 编程 网站优化 网络 网络安全 脚本 苹果 谷歌 软件 运维 逆向
  • 首页
  • 知识库
  • 地图
Copyright © 2023-2025 Eswlnk Blog. Designed by XiaoWu.
本站CDN由 壹盾安全 提供高防CDN安全防护服务
蜀ICP备20002650号-10
页面生成用时 1.195 秒   |  SQL查询 29 次
本站勉强运行:
友情链接: Eswlnk Blog 网站渗透 倦意博客 特资啦!个人资源分享站 祭夜博客 iBAAO壹宝头条
  • WordPress142
  • 网络安全64
  • 漏洞52
  • 软件52
  • 安全48
现在登录
  • 资源
    • 精彩视频
    • 破解专区
      • WHMCS
      • WordPress主题
      • WordPress插件
    • 其他分享
    • 极惠VPS
    • PDF资源
  • 关于我
    • 论文阅读
    • 关于本站
    • 通知
    • 左邻右舍
    • 玩物志趣
    • 日志
    • 专题
  • 热议话题
    • 游戏资讯
  • 红黑
    • 渗透分析
    • 攻防对抗
    • 代码发布
  • 自主研发
    • 知识库
    • 插件
      • ToolBox
      • HotSpot AI 热点创作
    • 区块
    • 快乐屋
    • 卡密
  • 乱步
    • 文章榜单
    • 热门标签
  • 问答中心反馈