试图使Websockify / noVNC通过反向代理工作

观察者

我试图弄清楚如何使noVNC通过反向代理工作,并且如果我直接连接到它,它会工作,但是如果我尝试反向代理,它似乎就不会工作。

即:

我以 ./utils/launch.sh --vnc localhost:5901

如果我连接到它 https://<machine>:6080/vnc.html?host=<machine>&port=6080

它工作正常,我可以连接到vnc会话

但是,我希望能够通过反向代理通过端口443连接到它。

在Apache 2.4.10(Debian Jessie中为-8)中,我将代理行配置为

ProxyPass /home http://127.0.0.1:6080/
ProxyPassReverse /home http://127.0.0.1:6080/
ProxyPass /websockify wss://127.0.0.1:6080/websockify retry=3
ProxyPassReverse /websockify wss://127.0.0.1:6080/websockify retry=3

我连接到它 https://<machine>/vnc.html?host=<machine>&port=6080

这仍然有效,因为在通过反向代理获取html / javascript时,我仍在告诉websocket连接超过6080,并且可以正常工作。

但是,当我将其更改为 https://<machine>/vnc.html?host=<machine>&port=443

我得到的html / javascript很好,但是当它建立连接时,在Firefox(以及chrome和IE,但这是特定于Firefox的错误)中,我很快就得到了

Firefox can't establish a connection to the server at wss://<machine>/websockify.

在noVNC中,我看到错误消息

127.0.0.1: ignoring socket not ready
观察者

事实证明,如果有人想通过https代理来代理websocket,则应该使代理部分成为普通的websocket(ws://)而不是安全的Web套接字(wss://),这很有意义,因为https代理会处理ssl部分已经存在,无事可做。

ProxyPass /websockify ws://127.0.0.1:6080/websockify retry=3
ProxyPassReverse /websockify ws://127.0.0.1:6080/websockify retry=3

进行更改,一切正常。

本文收集自互联网,转载请注明来源。

如有侵权,请联系debugcn@gmail.com 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用反向代理使Recaptcha工作

来自分类Dev

试图让GWT DataGrid在UiBinder中工作

来自分类Dev

试图通过这个封闭的例子...?

来自分类Dev

试图了解Git工作流程

来自分类Dev

试图使这个Python程序工作

来自分类Dev

试图使我的部署脚本正常工作

来自分类Dev

试图使原子记录工作

来自分类Dev

配置spring-social通过代理工作

来自分类Dev

试图了解ConcurrentDictionary的工作原理

来自分类Dev

试图溢出:隐藏的工作

来自分类Dev

Google Translate如何作为代理工作?

来自分类Dev

试图了解AWS扩展的工作原理

来自分类Dev

试图让守卫的块工作

来自分类Dev

试图使Laravel Valet 1.1.2正常工作

来自分类Dev

如何获得add-apt-repository以通过代理工作?

来自分类Dev

试图通过向量定义矩阵

来自分类Dev

通过Nginx反向代理进行git push停止工作(致命:远程端意外挂起)

来自分类Dev

试图让pygame文档代码正常工作

来自分类Dev

试图通过删除产生收益

来自分类Dev

试图通过JSX作为道具

来自分类Dev

如何获得add-apt-repository以通过代理工作?

来自分类Dev

由于继承而试图处理nHibernate代理类

来自分类Dev

试图使代码在类上工作

来自分类Dev

试图获取setTimeout(); 循环工作。

来自分类Dev

试图通过BeautifulSoup获取数据

来自分类Dev

通过littleproxy创建反向代理

来自分类Dev

试图溢出:隐藏的工作

来自分类Dev

试图让守卫的块工作

来自分类Dev

试图了解 SyncLock 的工作原理