[nginx openresty]nginx/openresty gzip失效或者淘宝的nginx-http-concat失效问题解决

更新时间:2019-10-01    来源:nginx    手机版     字体:

【www.bbyears.com--nginx】

今天想测试一下openresty, 结果发现gzip失效同时淘宝的nginx-http-concat也是小了,不过concat失效仅仅表现在js上,根据现象应该是mime类型导致的,所以下载了淘宝的tengine,发现其mime.types文件中关于js描述的一行和nginx或者openresty中的mime.types不同

nginx/openresty:
 
application/javascriptjs;

而tengine 的 mime.types中表现为:
 
application/x-javascriptjs;


综上所述, nginx的gzip模块和淘宝的concat模块获取在js文件类型都是的application/x-javascript

所以把application/x-javascript    js;加入nginx/openresty的mime.types中,重启nginx问题就解决了~

1、Apache启用gzip

如果要开启gzip的话,一定要打开下面二个模块.

LoadModule headers_module modules/mod_headers. so
LoadModule deflate_module modules/mod_deflate. so

设置压缩比率,取值范围在 1(最低) 到 9(最高)之间,不建议设置太高,虽然有很高的压缩率,但是占用更多的CPU资源.

DeflateCompressionLevel 3
AddOutputFilter DEFLATE html xml php js css

SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \\.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary #对代理的设置

下面二个测试网站

测试数据对css
Original Size: 44 KB
Gzipped Size: 10 KB
Data Savings: 77.27%
测试数据js
Original Size: 6 KB
Gzipped Size: 2 KB
Data Savings: 66.67%
测试数据php
Original Size: 62 KB
Gzipped Size: 15 KB
Data Savings: 75.81%

上面只是随机拿的几个数据,看的出来,使用了gzip压缩后文件小多了.

希望能帮上各位~有问题请在下方留言~我会第一时间回复

本文来源:http://www.bbyears.com/caozuoxitong/70599.html