【发布时间】:2014-12-11 07:36:41
【问题描述】:
我在 cloudflare 后面有一个网站。我需要在不关闭 cloudflare 支持的情况下通过 SSL 启用 websockets。我有一个 PRO 计划,因此不会获得新的 websocket 支持。我正在使用 Nginx 将 SSL 连接代理到在节点服务器上运行的 Web 套接字。现在,我在某处读到 cloudflare 可以与已批准的 ports 一起使用将支持 websockets。因此,我将 8443 用于 Nginx 端口,将另一个端口用于节点服务器。使用 wscat 会返回 200 错误。
$ wscat -c wss://xyz.com:8443
error: Error: unexpected server response (200)
我知道 websocket 需要一个 101 代码。但是,如果我访问https://xyz.com:8443,我可以看到节点服务器显示的页面告诉我代理正在工作。此外,一旦我关闭 cloudflare 支持,websocket 就会开始工作。任何让这个工作的线索。我知道我可以创建一个子域,但我更喜欢在 cloudflare 后面运行 websocket。
【问题讨论】:
标签: node.js nginx websocket cloudflare