该网站在HTTP上运行得非常好,但是在HTTPS上不起作用。 我已按照此页面上的所有步骤创建自签名证书并将其添加到我的Elastic Beanstalk环境中。 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https.html
我还使用以下命令从IAM获得成功的证书响应: aws iam get-server-certificate --server-certificate-name
使用证书更新Elastic Beanstalk后,我还添加了一条规则,允许安全组允许从0.0.0.0/0到端口443的入站流量。 最后,我还验证了我的负载均衡器监听器已正确设置HTTPS。
尽管如此,我对https的调用仍未解决,而http工作正常。 还有其他想法吗?任何帮助将不胜感激。
如果您需要更多信息,请与我们联系。拼命寻找一些见解/帮助。
无论如何,我无法使用我的网站/代码解决此问题,我尝试在Elastic Beanstalk上提供的示例网站上设置HTTPS。有趣的是,即使这样也行不通。
答案 0 :(得分:39)
我想提供一个我最终能够解决问题的更新。 根本原因是因为我错过了为负载均衡器的安全组设置入站规则。
无论出于何种原因,当我阅读文档时,我理解需要为实例的安全组(而不是负载均衡器)设置入站规则。只有在我开始跟踪Load Balancer之后,才意识到我应该尝试为Load Balancer的安全组设置规则。所以,问题得到了解决。以下是我使用的设置。
HTTPS 443 HTTP 80 <name of the certificate>
我不得不说文档可以更清楚地清楚地标识负载均衡器(而不是实例)的安全组所需的更改。
答案 1 :(得分:3)
从表现的角度来看,这个事件更好:
因为ELB支持SSL卸载,所以将证书部署到负载 平衡器(而不是它背后的EC2实例)将减少 实例需要的加密和解密工作量 处理
按照文档获取更多信息:
https://aws.amazon.com/fr/blogs/aws/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/
答案 2 :(得分:0)
我无法相信这一点...但它显示了 AWS 控制台有多糟糕...我不得不向下滚动并在一个不可见的按钮上单击“应用”,当它在添加后显示“待创建”时我认为它有效...facepalm。