我的问题类似于Nginx 反向代理到 cloudfront 分布并保留 gzip 压缩但特别是关于新的 brotli 压缩算法,在某些情况下,它的性能应该比 gzip 更好
我的 AWS Cloudfront Distribution 支持 brotli
但由于各种原因,我的网站位于 nginx 代理后面,并且当通过 proxy_passing 将请求发送到 cloudfront 时,我失去了 brotli 压缩,只得到了 gzip。
我已经激活了 gzip 压缩和 gzip_proxied,是否有等效方法可以让 gzip 或 brotli 压缩从 cloudfront 分发中保留下来?我听说过 nginx 的 brotli 模块和 2017 年的答案 (例子) 提到 nginx + brotli 的 proxy_pass 是不可能的,现在仍然如此吗?
server {
...
gzip on;
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
gzip_types *;
答案1
看这澄清一下。ngx_brotli 开发人员提到,类似的东西brotli_proxied
不是必需的,因为它默认会压缩代理请求。
server {
...
gzip on;
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
gzip_types *;
brotli on;
...
}
应该足够了。如果上游(在本例中为 Cloudfront)提供 Brotli 压缩资产,则 NGINX 将直接将其原封不动地传回客户端,而无需进行两次 Brotli 压缩。