Apache:代理 websocket wss 到 ws

Posted

技术标签:

【中文标题】Apache:代理 websocket wss 到 ws【英文标题】:Apache: Proxy websocket wss to ws 【发布时间】:2015-07-03 17:28:56 【问题描述】:

有谁知道如何代理 wss 到 ws 的连接?

例如:

ProxyPass "wss://" "ws://"

【问题讨论】:

正在寻找解决方案。如果您找到了方法,请分享 【参考方案1】:

解决方法是使用重写规则:

 RewriteEngine On
 RewriteCond %HTTP:Upgrade =websocket
 RewriteRule /(.*)           ws://localhost:9001/api/$1 [P,L]
 RewriteCond %HTTP:Upgrade !=websocket
 RewriteRule /(.*)           http://localhost:9001/api/$1 [P,L]

【讨论】:

我不知道为什么我必须这样做,但它确实有效。我正在使用 digitalocean ubuntu 16.04 LAMP 堆栈液滴,并从 Ratchet php 教程上传了一个示例,直到我将这部分添加到我的虚拟主机定义中,在连续 12 小时尝试所有内容之后,它根本不起作用。谢谢! 对我不起作用。我的节点 websocket(ws) 运行超过 5000。我想将 ws 请求路由到 wss

以上是关于Apache:代理 websocket wss 到 ws的主要内容,如果未能解决你的问题,请参考以下文章

Apache配置WebSocket代理

播放框架:使用 Apache 保护 WebSocket

如何使用 Apache 作为 WebSockets 的反向代理,以 Undertow 作为服务器

nginx代理websocket支持wss访问

带有代理的 WSS 使用端口 443 浏览器客户端连接到端口 6001 上的 websocket 服务器

Websocket配置证书支持wss