【问题标题】:Apache mod_headers modification not passing through on ProxyPassApache mod_headers 修改未通过 ProxyPass
【发布时间】:2018-07-18 00:40:51
【问题描述】:

我有 Web 套接字 GET 请求将发送到 Apache http 服务器并转发到 Apache Tomcat 8.5.x 服务器(此处表示为 192.168.1.77:80)。

我正在尝试使用 mod_headers 设置“升级”标头值。

在我的 VirtualHost 标记中,我有以下等价物:

<LocationMatch "/somewhere">
   ProxyPass ws://192.168.1.77:80/socket
   RequestHeader set Upgrade "myvalue"
</LocationMatch>

这并不像我期望的那样工作。该集似乎适用于 Apache http,但不适用于 Apache Tomcat。

在 Apache http 中,当我将 %{Upgrade}i 添加到我的 LogFormat 时,我看到“Upgrade”标头设置为“myvalue”。

但是,在Tomcat日志中,如果我添加*%{Upgrade}i",我看到我的RequestHeader设置操作没有生效,并且Tomcat在原始GET请求中记录了“Upgrade”标头的原始值.

注意:我已经尝试像这样添加“早期”参数:

<LocationMatch "/somewhere">
   ProxyPass ws://192.168.1.77:80
   RequestHeader set Upgrade "myvalue" early
</LocationMatch>

对出了什么问题或我可能遗漏了什么有什么想法吗?

【问题讨论】:

    标签: apache http websocket tomcat8 mod-headers


    【解决方案1】:

    我正在使用 mod_proxy_wstunnel,显然升级标头“WebSocket”在该模块中是硬编码的。

    【讨论】:

      猜你喜欢
      • 2019-02-12
      • 1970-01-01
      • 1970-01-01
      • 2013-11-26
      • 1970-01-01
      • 1970-01-01
      • 2015-10-15
      • 2017-01-09
      • 2018-02-12
      相关资源
      最近更新 更多