nginx 开通 gzip功能,压缩静态文件,提升静态资源加载速度 2、设置浏览器缓存,实现毫秒级加载

十年河东,十年河西,莫欺少钱穷

学无止境,精益求精

1、服务器上会存放大量的静态资源,譬如:js 文件、json 文件、xml 文件、css 文件等,如果一个文件过大,势必会影响网络加载速度。

nginx 提供了 gzip 表达式,他提供两个选项,一个是 on ,一个是 off ,on 代表打开压缩功能,off 代表关闭。

需要注意的是,当 gzip 设置为 on 时,需要显式指定 要压缩的文件类型,nginx 提供了 gzip_types 表达式,她的选项可参考 nginx 的 mime.types 文件中的类型

注:gzip 设置为 on 时,还需要指定 gzip_types 对应的类型,可以使用一个,或多个,多个用空格分隔,使用 * 代表所有类型,线上配置不建议使用 * 

在此mime.types 文件类型部分截图如下:

/

2、向linux主机中复制粘贴一个大的js文件,命名为:1.js 

 

 3、先将 gzip 配置成 off 

gzip off

4、网页请求 1.js

 5、开启压缩功能并重新加载nginx配置文件

gzip on; #开启压缩
gzip_vary on; #设置为on会在Header里增加 "Vary: Accept-Encoding"
gzip_proxied any; #代理结果数据的压缩
gzip_comp_level 3; #gzip压缩比(1~9),越小压缩效果越差,但是越大处理越慢,所以一般取中间值
gzip_buffers 4 128k; #获取多少内存用于缓存压缩结果,拿出 4 个 128K 用来缓存压缩的文件,是指:
gzip_http_version 1.1; #识别http协议的版本
gzip_min_length 1k; #设置允许压缩的页面最小字节数,超过1k的文件会被压缩

nginx -s reload  #从新加载nginx

6、再次请求 1.js

 测试发现,js 的文件大小确实压缩了,但,加载效率虽然没有等比例提升,但也将近提升了一倍

 

 

 nginx设置浏览器缓存

浏览器缓存其实是将你从服务器down下来的文件存储在你的本地,因此,nginx设置浏览器缓存后,就会实现毫秒级加载

在server块中增加针对静态文件缓存的时间 【针对.html、.js、.css等静态资源设置浏览器缓存,时间为1000秒】,location 匹配,可自行查询百度,关键词:nginx location 匹配规则。也可参考:https://blog.csdn.net/weixin_39532628/article/details/110887284   =  ~  ~*  等

        location ~ .*\.(html|js|css|png|jpg|gif|jpeg) {
            expires 1000;
        }

 

 然后重启nginx后,效率如下:

 从秒级(3秒左右)直接干到了毫秒级,牛不牛,哈哈哈。

更详细的浏览器缓存,可参考:https://blog.csdn.net/qq_42308316/article/details/109147978

@天才卧龙的博客

posted @ 2022-04-25 17:21  天才卧龙  阅读(1298)  评论(0编辑  收藏  举报