我有 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>
关于出了什么问题或我可能遗漏了什么的任何想法?