开发小技巧之Nginx的GZIP

简介: 学会这一招部署你的静态页面,性能提升20倍,绝不是夸张,nginx的这个功能,真的能大幅度增加你的静态文件的传输效率。
WangScaler: 一个用心创作的作者。

声明:才疏学浅,如有错误,恳请指正。

之前在手把手教你搭建自己的博客介绍了我的博客的搭建方式,但是并未提到怎么部署的,起初我的博客是在nginx上简单的部署的。后来随着博客的数量增多,也没钱增加服务器的带宽,所以访问越来越慢,甚至三四分钟之后都加载不出来。这时候想起来之前别人说的Nginx的GZIP。当配置完之后发现,提升到了10s左右,果真是好东西啊。

简介

GZIP顾名思义,就是将文件压缩传输。图片、视频、大文件不建议使用压缩,压缩需要占用你的服务器资源,压缩完效果也不大。文章出现很多图片的话,我建议使用图床来存放你的图片。nginx的其他功能可参考我的往期文章Nginx的常用操作

Nginx配置

    gzip on;
    gzip_min_length 1k;
    gzip_buffers    4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 9;
    gzip_types text/html text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml;
    gzip_disable "MSIE [1-6].";
    gzip_vary on;
    gzip_static on;
​

注意:该段配置在http层下,而不是server下。亲自测试过配置在server下不起作用。

  • gzip_min_length: 小于该值的文件不会被压缩。
  • gzip_buffers:设置申请内存的大小。这里是16k为单位的4块空间,即申请16k*4大小的内存空间。
  • gzip_comp_level:压缩级别越低压缩比越小,压缩速度越快。
  • gzip_types :需要压缩的文件类型。
  • gzip_disable : 指定某些浏览器不需要压缩,像IE5.5和IE6 SP1使用msie6参数来禁止gzip压缩。
  • gzip_vary:增加响应头”Vary: Accept-Encoding”

检查配置是否成功

重启nginx之后,访问博客。打开F12观察控制台的响应头,有没有Content-Encoding: gzip,如果没有则没配置成功,如果有则配置成功。

image-20210925100032221.png

最后

我觉着nginx虽然能将你的文件压缩传输,但是压缩过程肯定也是占用你的服务器资源的,所以建议提前手动使用命令将资源压缩。例如gzip assets/js/*,当然每次都自己手动压缩也很麻烦,下期给你们讲讲编译的时候如何使用插件自动压缩编译的文件。

四、必看的相关文章

来都来了,点个赞再走呗!

关注WangScaler,祝你升职、加薪、不提桶!

目录
相关文章
|
关系型数据库 MySQL 应用服务中间件
Mac PHP-Nginx-Mysql 本地开发日常启动流程
Mac PHP-Nginx-Mysql 本地开发日常启动流程
81 1
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块(下)
浅谈基于openresty(nginx+lua)开发轻量级,按流量控制的灰度模块
163 0
|
6月前
|
负载均衡 应用服务中间件 网络安全
Django后端架构开发:Nginx服务优化实践
Django后端架构开发:Nginx服务优化实践
103 2
|
6月前
|
应用服务中间件 nginx
nginx配置gzip压缩
nginx配置gzip压缩
109 1
|
7月前
|
应用服务中间件 Linux nginx
FFmpeg开发笔记(四十)Nginx集成rtmp模块实现RTMP推拉流
《FFmpeg开发实战》书中介绍了如何使用FFmpeg向网络推流,简单流媒体服务器MediaMTX不适用于复杂业务。nginx-rtmp是Nginx的RTMP模块,提供基本流媒体服务。要在Linux上集成rtmp,需从官方下载nginx和nginx-rtmp-module源码,解压后在nginx目录配置并添加rtmp模块,编译安装。配置nginx.conf启用RTMP服务,监听1935端口。使用ffmpeg推流测试,如能通过VLC播放,表明nginx-rtmp运行正常。更多详情见书本。
190 0
FFmpeg开发笔记(四十)Nginx集成rtmp模块实现RTMP推拉流
|
6月前
|
Ubuntu 前端开发 JavaScript
如何在 Ubuntu 14.04 上为 Nginx 添加 gzip 模块
如何在 Ubuntu 14.04 上为 Nginx 添加 gzip 模块
49 0
|
7月前
|
前端开发 JavaScript 应用服务中间件
Nginx 开启 gzip 压缩,让网站飞一会!
一起来了解下nginx的gzip压缩
356 3
|
算法 应用服务中间件 nginx
nginx开通gzip压缩传输文件
nginx开通gzip压缩传输文件
|
Web App开发 缓存 应用服务中间件
Nginx之gzip模块解读
Nginx之gzip模块解读
|
应用服务中间件 API nginx
在内网开发中使用Nginx代理来访问钉钉新版服务端API
在内网开发中使用Nginx代理来访问钉钉新版服务端API
870 1