在 ACM 中为 Elastic Beanstalk 后端请求证书
Request a certificate in ACM for Elastic Beanstalk backend
我一周前才开始使用 AWS。我通过 Elastic Beanstalk 在 Docker 容器中部署了我的 NodeJS 后端。以及通过 CloudFront 在 S3 中的前端 Angular5 应用程序。
我在 GoDaddy 上购买了一个域名并将其配置为指向我的 CloudFront Angular5 应用程序。我还为该域生成了一个 SSL 证书(用于前端)。但是,由于后端不安全,来自前端应用程序的所有请求都被阻止。
因此,据我了解,下一步是为 ElasticBeanstalk NodeJS 后端配置 HTTPS。
我找到了关于该主题的各种文章。但是他们都假设我已经颁发了证书。
问题是,当我尝试通过 ACM 为 Elastic Beanstalk 给我的 URL (my-website.eu-west-2.elasticbeanstalk.com) 请求证书时,请求被拒绝并出现以下错误:
Request failed
The status of this certificate request is "Failed". Additional verification required to request certificates for one or more domain names in this request.
在那种情况下我能做什么?甚至可以使用 aws 提供的 URLs(如 elastic beanstalk 提供的)来请求 SSL 证书吗?
如果我的术语不是很正确,我们深表歉意。我对所有这些东西都很陌生。
您不能为 Amazon 域(amazonaws.com、elasticbeanstalk.com 等)注册 SSL 证书
如果您想为您的 Elastic Beanstalk 应用程序(内部或外部)使用 HTTPS,您必须使用您自己的域。
- 向 DNS 注册商注册域。
- 通过 ACM 为该域请求 SSL 证书。
- 将该 ACM 证书分配给您的 Elastic Beanstalk 应用程序。
- 将您的域指向 Elastic Beanstalk 应用程序,将 CNAME 用于外部 DNS,将 CNAME 或 ALIAS 用于 Route 53。
- 通过您的域名访问 EB 申请,而不是 elasticbeanstalk-assigned 地址。
是的,正如 Matt Houser 提到的,这是不可能的。我只是想知道我是否应该获得另一个域名。
我最终做的很简单。我使用 route53 创建了另一个带有 url api.my-website.com 的别名记录,它指向我的 Elastic Beanstalk 后端。
然后我使用 ACM 为 api.my-website.com 和 (www.)my-website.com 颁发了两个单独的 SSL 证书,以在前端和后端启用 HTTPS并相应地将它们附加到 ElasticBeanstalk 和 CloudFront。 AWS提供的服务看起来很简单。
结果如下:https://my-next-movie.com
我就把它留在这里,以防有人和我一样陌生。
我一周前才开始使用 AWS。我通过 Elastic Beanstalk 在 Docker 容器中部署了我的 NodeJS 后端。以及通过 CloudFront 在 S3 中的前端 Angular5 应用程序。
我在 GoDaddy 上购买了一个域名并将其配置为指向我的 CloudFront Angular5 应用程序。我还为该域生成了一个 SSL 证书(用于前端)。但是,由于后端不安全,来自前端应用程序的所有请求都被阻止。
因此,据我了解,下一步是为 ElasticBeanstalk NodeJS 后端配置 HTTPS。
我找到了关于该主题的各种文章。但是他们都假设我已经颁发了证书。
问题是,当我尝试通过 ACM 为 Elastic Beanstalk 给我的 URL (my-website.eu-west-2.elasticbeanstalk.com) 请求证书时,请求被拒绝并出现以下错误:
Request failed
The status of this certificate request is "Failed". Additional verification required to request certificates for one or more domain names in this request.
在那种情况下我能做什么?甚至可以使用 aws 提供的 URLs(如 elastic beanstalk 提供的)来请求 SSL 证书吗?
如果我的术语不是很正确,我们深表歉意。我对所有这些东西都很陌生。
您不能为 Amazon 域(amazonaws.com、elasticbeanstalk.com 等)注册 SSL 证书
如果您想为您的 Elastic Beanstalk 应用程序(内部或外部)使用 HTTPS,您必须使用您自己的域。
- 向 DNS 注册商注册域。
- 通过 ACM 为该域请求 SSL 证书。
- 将该 ACM 证书分配给您的 Elastic Beanstalk 应用程序。
- 将您的域指向 Elastic Beanstalk 应用程序,将 CNAME 用于外部 DNS,将 CNAME 或 ALIAS 用于 Route 53。
- 通过您的域名访问 EB 申请,而不是 elasticbeanstalk-assigned 地址。
是的,正如 Matt Houser 提到的,这是不可能的。我只是想知道我是否应该获得另一个域名。
我最终做的很简单。我使用 route53 创建了另一个带有 url api.my-website.com 的别名记录,它指向我的 Elastic Beanstalk 后端。
然后我使用 ACM 为 api.my-website.com 和 (www.)my-website.com 颁发了两个单独的 SSL 证书,以在前端和后端启用 HTTPS并相应地将它们附加到 ElasticBeanstalk 和 CloudFront。 AWS提供的服务看起来很简单。
结果如下:https://my-next-movie.com
我就把它留在这里,以防有人和我一样陌生。