开发小技巧之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,祝你升职、加薪、不提桶!

目录
相关文章
|
Web App开发 应用服务中间件 PHP
|
9月前
|
算法 应用服务中间件 nginx
nginx开通gzip压缩传输文件
nginx开通gzip压缩传输文件
|
6月前
|
Web App开发 缓存 应用服务中间件
Nginx之gzip模块解读
Nginx之gzip模块解读
|
缓存 前端开发 应用服务中间件
Nginx开启Gzip压缩功能(附详细解释)+测试是否开启了压缩
Nginx实现资源压缩的原理是通过ngx_http_gzip_module模块拦截请求,并对需要做gzip的类型做gzip,ngx_http_gzip_module是Nginx默认集成的,不需要重新编译,直接开启即可。
2242 1
Nginx开启Gzip压缩功能(附详细解释)+测试是否开启了压缩
|
XML JSON 缓存
自定义变量、Nginx 访问日志转换为 json 及 Nginx gzip 压缩功能(二)|学习笔记
快速学习自定义变量、Nginx 访问日志转换为 json 及 Nginx gzip 压缩功能
229 0
自定义变量、Nginx 访问日志转换为 json 及 Nginx gzip 压缩功能(二)|学习笔记
|
前端开发 应用服务中间件 nginx
Nginx开启GZIP压缩,提升前端访问速度
将响应报⽂发送⾄客户端之前可以启⽤压缩功能,这能够有效地节约带宽,并提⾼响应⾄客户端的速度
231 0
|
域名解析 安全 应用服务中间件
开发小技巧之Nginx配置二级域名
我们平常可以使用端口号来区分不同的服务,但是我们访问网站的时候几乎没见过使用域名加端口号的情况,那是因为可以使用二级域名代替。
1562 1
开发小技巧之Nginx配置二级域名
|
应用服务中间件 nginx
【Nginx】第十节 应用场景之静态资源WEB服务之gzip(2)
【Nginx】第十节 应用场景之静态资源WEB服务之gzip
87 0
【Nginx】第十节 应用场景之静态资源WEB服务之gzip(2)
|
存储 XML 缓存
【Nginx】第十节 应用场景之静态资源WEB服务之gzip(1)
【Nginx】第十节 应用场景之静态资源WEB服务之gzip
163 0
【Nginx】第十节 应用场景之静态资源WEB服务之gzip(1)
|
应用服务中间件 nginx 数据格式
nginx的rewrite模块使用及gzip模块配置记录
nginx的rewrite模块使用及gzip模块配置记录
1385 0