使用nginx缓存GZIPed内容

时间:2018-06-13 16:27:13

标签: nginx

我想知道nginx是否可以保留缓存gziped内容或者它一直gzip文件?

通过“保持缓存”,我的意思是内存或磁盘,服务器端(没有浏览器缓存)。

因为我发现静态压缩(使用sendfile)和使用nginx gzip模块(无法使用sendfile)之间存在巨大差异。

1 个答案:

答案 0 :(得分:1)

据我所知,Nginx没有将gzip压缩内存保留在内存中 - 管理这样的缓存可能会使其在大多数情况下变得更慢更复杂,并且对99%的用例没有帮助,因为gzip的开销通常很低

我建议使用gzip_static代替 - 如果你启用它,Nginx会查找带有额外.gz结尾的请求文件并提供此代码而不是gzip本身,所以如果有人请求bigfile.png并且Nginx看到那里是bigfile.png.gz,它将.gz文件作为gzip提供,不进行自己的计算。我将此用于所有可以提前准备的资源(JS,CSS,图像,XML)。因为你只需要一次gzip,你也可以使用最高的压缩率。