首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何防止nginx反向代理重新压缩上游压缩响应?

如何防止nginx反向代理重新压缩上游压缩响应?
EN

Stack Overflow用户
提问于 2020-09-26 09:20:19
回答 1查看 1.4K关注 0票数 0

我有nginx反向代理,它接收来自上游的brotli压缩响应(Varnish )。但是,只有在反向代理服务器块中设置"brotli;“时,反向代理才能向浏览器提供brotli压缩响应。

我的目标是让nginx反向代理完全不处理压缩。要做到这一点,我有以下问题:

  1. 反向代理块是否期望取消压缩接收到的响应并自行处理?它不能直接将上游响应传递回客户端吗?
  2. 是否有一种方法来转储代理响应,或者它的大小是nginx日志?这将有助于更好地调试该问题。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-28 06:46:27

我已解决了这一问题,因此,我向可能遇到类似问题的任何人发布这一信息:

  1. 清漆将我的“接受-编码”请求头更改为“gzip”。根据清漆文档,这是按设计(请看这里)。
  2. 但是,上游nginx服务器(清漆后面)响应时使用非压缩内容,因为gzip_http_version的缺省值为1.0,而proxy_http_version的缺省值为1.1。(请看这里)

决议是通过以下方式达成的:

通过将-p http_gzip_support=off传递给varnishd,将清漆设置为不担心压缩。

在上游Nginx服务器上将gzip_http_version设置为1.1

对上述行为进行解密成为可能,因为我在我的上游nginx服务器(清漆后面的服务器)上记录了以下内容:

代码语言:javascript
复制
log_format bytes_sent '$bytes_sent' - '$http_accept_encoding' - '$request';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64075897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档