我正在使用Apache 2.4,Ubuntu 14.04背后的闪亮服务器(最新版本,1.4.2.786)。
按照在线文档(https://support.rstudio.com/hc/en-us/articles/213733868-Running-Shiny-Server-with-a-Proxy)的说明,我可以正确设置Web套接字的代理。但是,我想将我的URL直接指向一个闪亮的应用程序(并非所有应用程序)。
这是我目前的配置:
ProxyPreserveHost On
ProxyPassMatch "^/(.+)/websocket" "ws://localhost:3838/$1/websocket"
ProxyPass "/" "http://localhost:3838/users/username/appname/"
ProxyPassReverse "/" "http://localhost:3838/users/username/appname/"
ProxyRequests Off
使用此配置,我仍然收到错误消息:
WebSocket connection to
'wss://my-url/__sockjs__/
n=WxwgyafTMc2bWeH5eR/787/mx9zqt68/websocket'
failed: Error during WebSocket handshake:
Unexpected response code: 500
我猜这是由socket的代理配置引起的。感谢您提出修复建议。
答案 0 :(得分:3)
你见过this吗?它说您的代码应该如下所示:
ProxyPreserveHost On
ProxyPassMatch "^/(.+)/websocket" "ws://localhost:3838/$1/websocket"
ProxyPass "/users/username/appname/" "http://localhost:3838/users/username/appname/"
ProxyPassReverse "/users/username/appname/" "http://localhost:3838/users/username/appname/"
ProxyRequests Off
希望有所帮助!