nginx - 使用 nginx 缓存 GZIPed 内容

标签 nginx

我想知道 nginx 是否可以将 gzip 压缩的内容保存在缓存中,或者它一直 gzip 文件?

通过“保留缓存”,我的意思是内存或磁盘中的某些东西,在服务器端(没有浏览器缓存)。

因为我看到静态压缩(启用 sendfile)和使用 nginx gzip 模块(不能使用 sendfile )之间存在巨大差异。

最佳答案

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

我建议使用 gzip_static 相反 - 如果您启用它,Nginx 会查找带有附加 .gz 结尾的请求文件并提供此文件而不是 gzip 本身,因此如果有人请求 bigfile.png 并且 Nginx 也看到有 bigfile.png.gz,它将提供.gz 文件作为 gzip 并且本身不进行计算。我将它用于所有可以提前准备好的资源(JS、CSS、图像、XML)。因为你只gzip一次,你也可以使用最高的压缩比。

关于nginx - 使用 nginx 缓存 GZIPed 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50842071/

相关文章:

nginx - Nginx 是否符合开源 FIPS 标准?

nginx - nginx "upstream"指令是否有端口设置?

azure - ASP.NET Core Docker 容器内的 Nginx

reactjs - 我如何在docker容器中从我的React构建中提供静态文件

nginx - Kubernetes ingress-nginx - 如果未配置 TLS,如何禁用 https 监听?

amazon-web-services - ELB 和 EC2 之间发生 408 请求超时错误

nginx 反向代理背后的 ASP.NET customErrors

web-applications - Mongrel2 与 NGINX+ZeroMQ?

node.js - 设置 nginx ssl nodejs+express socket.io angularjs

nginx - 如何将 $request_uri 添加到 auth_request 模块?