【问题标题】:ELB listener configuration for WSS websocketWSS websocket 的 ELB 监听器配置
【发布时间】:2018-05-17 09:59:44
【问题描述】:

我的 Websocket WS 工作正常。但是当我使用 WSS 时,它失败并出现以下错误。

到“wss://mywebsocket.ca/”的 WebSocket 连接失败:连接建立错误:net::ERR_INSECURE_RESPONSE 感觉有些 SSL 问题。我已正确配置我的证书,并且通过此 ELB 的所有其他 url 都可以正常工作。我的 Ws curl 效果很好。

可能是什么问题?可能是 HTTPS 的 ELB 的侦听器配置没有正确完成。

我只是使用一些chrome扩展来连接Websocket。这里没有代码。

【问题讨论】:

    标签: amazon-web-services ssl websocket amazon-elastic-beanstalk elastic-load-balancer


    【解决方案1】:

    我花了一段时间才弄清楚。我希望我没有忘记下面答案中的任何内容,因为这是不久前我做到的。

    首先,您需要绕过 CloudFront,因为它不能很好地与 websockets 一起运行(除非最近发生了一些变化)。设置一个 A 别名 Route 53 记录指向您的负载均衡器(即 websockets.domain.com)。

    在您的负载均衡器中为您的端口设置一个侦听器(即 5678)。请注意,您应该使用 SSL(安全 TCP)协议。您还需要一个 SSL 证书给您的听众。为此使用 ACM,它为您提供了选择。

    记得更改您的 websockets 连接以使用这个新连接。

    【讨论】:

    • 我有 cloudfront,它指向我的 S3 存储桶,在其中编写了 websocket 客户端。这是否意味着它不起作用?
    • 我不明白你们的架构现在是什么样子的。你说你有ELB?在 ELB 后面你有 EC2 实例,这就是答案。我很确定您需要 CloudFront 才能将 SSL 证书用于 S3 存储桶,这意味着它不起作用。
    • ELB 有 Websocket 服务器。而 S3 有 Websocket Angular 客户端。 S3 前面有云端以支持 SSL。所以 S3 与 ELB 对话。所以它不会工作?
    • 好吧好吧。如果 websocket 服务器在 ELB 后面,它应该可以工作。只需确保您的客户端在连接时使用 wss://websocket.domain.com。
    • 我的 WSS 仍然无法工作。它在连接建立时出错:net::ERR_INSECURE_RESPONSE
    猜你喜欢
    • 1970-01-01
    • 2019-07-23
    • 2022-08-19
    • 1970-01-01
    • 2019-03-26
    • 2013-09-08
    • 2011-07-16
    • 1970-01-01
    相关资源
    最近更新 更多