【问题标题】:How's TCP connection established with reverse proxy反向代理如何建立 TCP 连接
【发布时间】:2016-02-10 23:30:48
【问题描述】:

我已经设置 Nginx 服务器作为 Apache 的反向代理。现在我想知道如何在此工作流程中建立和关闭 TCP 连接。我的假设是在浏览器和 Nginx 之间建立第一个 TCP 连接,然后 Nginx 建立到 Apache 的第二个 TCP 连接。当来自 Apache 的响应返回时,Nginx 会关闭此连接并将响应返回给浏览器。真的是这样吗?

【问题讨论】:

    标签: apache nginx tcp proxy


    【解决方案1】:

    是的,你是对的。

    Nginx 为来自客户端的 1 个请求创建 2 个连接:客户端 Nginx Apache。

    为了获得更好的性能,您应该配置缓冲(例如https://www.digitalocean.com/community/tutorials/understanding-nginx-http-proxying-load-balancing-buffering-and-caching

    并查看 proxy_redirect 指令。

    【讨论】:

    • 谢谢,您有使用套接字反向代理的经验吗?
    • 你是指 web sockets 还是 unix sockets?对于 unix-sockets,我认为您不需要使用 proxy_redirect。
    • 网络套接字反向代理配置
    • 代理websocket到后端的HTTP连接应该保持活动状态(头连接值至少不应该是“关闭”)
    【解决方案2】:

    Nginx 创建两个连接,这是正确的。除了它不会关闭连接,而是保持连接打开,以便它也可以将其用于其他请求。

    【讨论】:

      猜你喜欢
      • 2012-11-11
      • 2014-03-15
      • 2018-01-27
      • 2020-04-05
      • 1970-01-01
      • 2014-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多