为什么SSL不能在我的AWS ELB上运行?

我正在尝试为我的网站设置我的SSL证书。 不过,我的网站回应与this site can't be reached在Chrome中this site can't be reached

在证书pipe理器中,它显示我的证书的关联资源是我的ELB。 ELB设置为HTTPS,端口443.其目标组为HTTP,端口为80.浏览http / 80时,该站点工作正常。 我想我的设置意味着用户点击HTTPS ELB,然后ELB将使用端口80来为我的网站服务。

httpstat https://www.ereverse.com输出:

 > curl -w <output-format> -D <tempfile> -o <tempfile> -s -S ereverse.com curl error: curl: (7) Failed to connect to www.ereverse.com port 443: Connection refused 

我还应该注意到我的应用程序正在通过Dockerfile运行,它正在使用-p 80:5000进行运行,并且Dockerfile具有EXPOSE 80 443

基于这个错误,假设你的ELB在端口443上有一个监听器。

 Connection refused 

…最明显的解释是你的DNS并不是真的指向ELB。 使用dignslookup来validation。

configuration监听器的ELB不会拒绝连接。 安全组和networkingACLS 也不拒绝连接 – 如果configuration错误,你会得到的结果是Connection timed out ,因为它们通过丢弃拒绝stream量 – 而不是强行closures连接尝试,这就是Connection refused意思:连接一直到另一端的服务器,它主动返回一个消息,(实际上)说:“我不知道你为什么认为我想谈谈端口443.没有什么在这个端口上侦听,在这里“。

轻松检查:使用HTTPS直接连接到AWS控制台中显示的ELB主机名。 您应该看到证书警告,因为证书不匹配。 如果发生这种情况,ELB会启动并监听,并且它表明DNS条目直接指向您的实例,而不是平衡器。