Wha*_*sUp 11 reverse-proxy apache2 mod-proxy websocket
我有一个Web套接字和我的反向代理Apache的问题,我已经在最新版本2.4.5升级并加载了模块mod_proxy_wstunnel.
httpd.conf:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName www.toto.fr
ServerAlias toto.fr
ProxyPass /my_app http://1X.X.X.1:8080/my_app
ProxyPassReverse /web_pmr http://1X.X.X.1:8080/my_app
ProxyPassReverseCookiePath /my_app /
ProxyPassReverseCookieDomain localhost my_app
ProxyRequests off
ProxyTimeout 15
#WEBSOCKETS
ProxyPass /my_app/BasicWebsocketServlet ws://1X.X.X.1:8080/my_app/BasicWebsocketServlet retry=0
ProxyPassReverse /my_app/BasicWebsocketServlet ws://1X.X.X.1:8080/web_pmr/BasicWebsocketServlet retry=0
ErrorLog "logs/my_app_error.log"
LogLevel debug
CustomLog "logs/my_app_access.log" combined
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
当我在本地URL中测试时,websockets正在运行,但是使用反向代理Apache,Tomcat日志中没有跟踪.
hdg*_*ood 22
这一行:
ProxyPass /my_app/BasicWebsocketServlet ws://1X.X.X.1:8080/my_app/BasicWebsocketServlet retry=0
Run Code Online (Sandbox Code Playgroud)
需要在此之前来:
ProxyPass /my_app http://1X.X.X.1:8080/my_app
Run Code Online (Sandbox Code Playgroud)
解释(来自https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#proxypass):
订购ProxyPass指令
配置的ProxyPass和ProxyPassMatch规则按配置顺序进行检查.匹配胜利的第一条规则.因此,通常您应该首先从最长的URL开始对有冲突的ProxyPass规则进行排序.否则,较长URLS的后续规则将被使用URL的前导子字符串的任何早期规则隐藏.请注意,与工作人员共享存在某种关系.相反,只有一个ProxyPass指令可以放在Location块中,并且最具体的位置优先.
出于同样的原因,排除必须在通用ProxyPass指令之前.
| 归档时间: |
|
| 查看次数: |
25045 次 |
| 最近记录: |