【问题标题】:NGINX Error: upstream sent invalid chunked response while reading upstreamNGINX 错误:上游在读取上游时发送了无效的分块响应
【发布时间】:2018-09-02 06:07:40
【问题描述】:

我们在 NGINX 后面有带有 Jersey 服务 API 的 tomcat。 我们开发的新流式 API 在直接调用 Tomcat 时效果很好,但在通过 NGINX 调用时开始没有响应。

查看我们得到的 NGINX 日志:

upstream sent invalid chunked response while reading upstream

【问题讨论】:

    标签: tomcat nginx jersey chunked-encoding


    【解决方案1】:

    我们通过向 NGINX 添加以下内容解决了这个问题:

    proxy_http_version 1.1

    我猜 NGINX 代理流量默认使用 http 1.0 版本,但分块传输编码是 http 1.1 的功能。

    https://forum.nginx.org/read.php?2,247883,247906#msg-247906

    【讨论】:

    • 这个答案已经两次救了我的命。我总是忘记这个问题的原因是什么,并最终在这里记住。
    • 哈哈...出于自私的原因,我在这里添加了它,我知道我将来会需要它,并会在 StackOverflow 中寻找答案:-)
    【解决方案2】:

    就我而言,仅设置 proxy_http_version 1.1 不起作用。我必须设置这些 -

    proxy_http_version 1.1;
    proxy_set_header Connection "";
    

    【讨论】:

      猜你喜欢
      • 2015-10-26
      • 2020-01-15
      • 2018-12-14
      • 2021-02-04
      • 2017-04-09
      • 2019-12-21
      • 2015-01-27
      • 2013-09-15
      相关资源
      最近更新 更多