如何为 Elastic Beanstalk url 启用 HTTPS

Hay*_*ams 2 ssl https amazon-web-services amazon-elastic-beanstalk

我已经为我的自定义域名 (haydenclay.page) 启用了 HTTPS,但我还需要 Beanstalk url (app-name.elasticbeanstalk.com) 来通过 HTTPS 运行。

HTTPS 目前不起作用,因为证书名称与我的自定义域名匹配,产生:ERR_CERT_COMMON_NAME_INVALID

我需要 HTTPS,因为我发出 API 请求,从 HTTPS 转到 HTTP 会引发混合内容错误。如何在 beanstalk url 上启用 HTTPS?

我已经尝试过像这样在控制台中创建别名

Mar*_*cin 7

遗憾的是,您无法直接为app-name.elasticbeanstalk.com启用https 。这是因为该域由 AWS 控制。您只能为您控制的域注册 SSL 证书。

如果您想通过 ssl 从 EB 为您的内容提供服务器,您通常有三个选项

  1. 使用负载均衡器前置您的实例。这是最简单的* 方法,因为您可以将 ACM SSL 证书与您的域的平衡器相关联。

  2. 使用CloudFront (CF)前置您的 EB 实例。您可以使用 CF 发行版和 SSL 证书为您的 cloudfront 域设置备用名称。您也可以为此使用 ACM。设置也很简单,但应该注意的是,CF 和您的 EB 实例之间的流量仅为 http,除非您还在实例上设置了自己的 SSL 证书(不是来自 ACM)(第 3 点)。

  3. 使用 nginx 直接在 EB 实例上安装您自己的 SSL 证书(不是来自 ACM)。这需要手动设置和有效的公共证书。流行的选择是 LetsEncrypt,从中获取 SSL 证书。

  • 谢谢,问题解决了。我是一名新开发人员,所以这个问题是由于我对 API 用例和 HTTPS 的混淆而引起的。我正在对我的 beanstalk url 进行 api 调用,在测试和 HTTP 下运行良好。调用我的自定义域显然是正确的方法 (2认同)