【发布时间】:2016-09-18 01:25:59
【问题描述】:
我有一个用 qt 用 c++ 编写的测试 websocket 服务器。它侦听 2 个端口,一个用于 ws,另一个用于 wss。每当我尝试测试与 ws 的连接时,它通常都可以工作(在带有 IE11 和 Edge 的 Win10 上除外)。但是,无法从 Firefox、IE11 或 Edge 打开 wss 连接。它适用于 Chrome 和 Opera。它甚至(有时)适用于 Win 8.1 和 Firefox 上的 IE11。但它永远无法在 Windows 10 上与 IE11 或 Edge 一起使用。它也不适用于带有 Firefox 的 Ubuntu。我收到如下回复:{"trusted":"true"}。在 WebSocket 监视器中,我看到“断开连接的代码 1006”。 无法在某些浏览器上运行的原因可能是什么,以及如何找到确切原因?我正在测试的服务器上有一个有效的 ssl 证书。此外,如果我在https://www.websocket.org/echo.html 尝试回声测试,它也可以正常工作。
提前致谢。
【问题讨论】:
-
我的猜测是您缺少链证书。 Chrome(和 Opera)尝试以各种方式解决此问题,而其他浏览器则不会。尝试SSLabs 并注意不完整的链。