优化 | gzip 压缩
Posted cnjs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优化 | gzip 压缩相关的知识,希望对你有一定的参考价值。
gzip 压缩
nginx gzip
压缩本以为运维默认配置好的,直到前几天看到线上项目加载 400kb
左右脚本文件,有点方了,
查看 Content-Encoding
发现 gzip
压缩未生效。查找原因...
nginx gzip 配置
基本与常见配置相同。有一点区别,gzip_types
,如下:
// 启用 gzip 压缩 Content-Type 类型
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
未启用 gzip 压缩脚本 Content-Type 为 application/javascript
,配置中没有。有一个 application/x-javascript
?
这是什么鬼?超集还是? 区别在这里[1]
简单地说:
•text/javascript
过时类型•application/x-javascript
实验、过渡类型•application/javascript
标准类型
可能问题就在这了,gzip_types
加添加 application/javascript
。完事 ~
快速查看是否开启 gzip 压缩
curl -I -H "Accept-Encoding: gzip, deflate" "文件url,eg: https://cdn.bootcss.com/vue/2.6.10/vue.common.dev.js"
结果中出现: content-encoding: gzip
表示已启用,如果未有该字段,注意查看 gzip_types
中是否配置文件的 Content-Type
,到这里基本可以确定问题原因了
这里有一个问题,相同的配置,有的项目居然生效了,这就奇怪了。
References
[1]
区别在这里: https://stackoverflow.com/questions/9664282/difference-between-application-x-javascript-and-text-javascript-content-types
——— END ———
欢迎分享、关注、在看!
以上是关于优化 | gzip 压缩的主要内容,如果未能解决你的问题,请参考以下文章