添加第二个域解析到单个弹性 beanstalk 应用程序

Add a second domain resolved to a single elastic beanstalk application

我有一个现有的 Elastic Beanstalk 应用程序映射到我的域。我现在需要迁移此服务以使用新域,因为旧域即将停用。但是,在迁移阶段,我需要维护这两个映射。

所以,今天我使用 SSL 证书在端口 443 上设置了一个 HTTPS 侦听器的 EB,我们可以调用 *.foo.com。假设 EB URL 是 hello.eu-west-1.elasticbeanstalk.com

然后我有一条指向 hello.eu-west-1.elasticbeanstalk.comhello.foo.com 的 Route 53 别名记录。

https://hello.foo.com 的请求转到 EB 应用程序,侦听端口 443 并使用 *.foo.com SSL 证书。到目前为止,还不错。

现在假设我已经购买了 bar.com,我需要 https://hello.bar.com 指向同一个 EB 应用程序。这怎么可能?

如果我为 hello.bar.com 设置一个新的 A 记录指向 EB,域名解析,但证书不匹配(很明显)。 如果我设置 CNAME 记录也是如此。

由于我无法使用端口 443 和 *.bar.com 证书向 EB 添加第二个侦听器,因此我发现自己的选择非常少。到目前为止,我想出了:

  1. 将 EB 环境克隆到一个新环境,并使用新证书将 hello.bar.com 指向 https://hello-new.eu-west-1-elasticbeanstalk.com
  2. 在 EB 前面使用 CloudFront,然后为 hello.bar.com 设置一条 A 记录指向 xxxxx.cloudfront.net,后者又指向 EB URL .

是否有更多或更好的方法来做到这一点?处理这种情况的最佳方法是什么?一旦我的新域启动并且我的所有客户都在使用新域,我想删除旧的 foo.com 域,但我需要 foo.combar.com 在迁移过程中并行工作阶段。此外,似乎没有必要将 CloudFront 放在 ELB 前面 - 这是经过身份验证的 API 并且无论如何都不可能进行缓存。

您可以向 ALB 添加多个证书,以便正确回答 *.foo.com*.bar.com

可以找到旧指南here