【问题标题】:Websocket connection to Rabbitmq over SSL through ELBWebsocket 通过 ELB 通过 SSL 连接到 Rabbitmq
【发布时间】:2017-12-09 10:55:01
【问题描述】:

我在负载均衡器后面的 AWS 实例上安装了 rabbitmq 服务器。我目前能够使用 js 从 http url 连接、发送和接收消息。但是,当我从 https url 尝试相同的壮举时,我无法成功地保持连接。

下面的 sn-p 显示了我到目前为止采取的几种策略:

var ws =  null; 
if (window.location.protocol.indexOf("https") >= 0){
    //1 ws =  new WebSocket('wss://myelbpublicdns.com:15674/ws');
    //2 ws =  new WebSocket('wss://myec2publicdns.com:15674/ws');
    //3 ws =  new WebSocket('wss://myurl.com:15674/ws');
} else {
    ws =  new WebSocket('ws://' + awshost + ':15674/ws');
}    
var client = Stomp.over(ws);
client.connect(username, password, on_connect, on_error, '/');

所以通过 ws: 连接可以正常工作。 将选项 1 连接到我的 ELB 会得到一个 SSL_ERROR_BAD_CERT_DOMAIN 说明证书适用于 myurl.com,这很有意义

将选项 2 连接到 ec2 实例会获得 SSL_ERROR_RX_RECORD_TOO_LONG

将选项 3 直接连接到 myurl.com 会收到 400 错误请求。

端口 15674 在我的 ELB 上打开,并附加了 ssl 证书。

感谢所有关于如何让我的 wss: 连接正常工作的想法!

【问题讨论】:

    标签: amazon-web-services ssl amazon-ec2 rabbitmq elastic-load-balancer


    【解决方案1】:

    您能否检查以下内容并确认,以便我可以尝试帮助这个人。

    1. 您的证书是使用 AWS ACM 生成的吗?
    2. 你试过 new WebSocket('wss://www.myurl.com:15674/ws');

    【讨论】:

    • 感谢您的帮助。事实证明,rabbit 不会做我们想做的事情,所以我们转向了 xmpp 实现。
    猜你喜欢
    • 2019-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-30
    • 2014-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多