如何将路径从 cname 记录传递到 ALB?

How do I pass paths from a cname record to ALB?

我有一段时间对此感到困惑。

我有一个 API 应用程序托管在 ECS 和一个目标为该 ECS 的 ALB 上。 我需要为 ALB 设置 Cognito,但 ALB 需要使用 SSL。 我还了解如何在不同的 DNS(不是 R53)上注册主域。

AWS 文档说有两种方法可以将流量路由到 LB。使用 CNAME 或别名记录集。

我的问题是:

  1. 我是否需要 R53 上的主域才能为 ALB 创建别名记录集?我是否需要一个注册域,或者别名会自动创建一个免费域(因为 AWS 说别名是免费的)?

  2. 我可以在另一个 DNS 上托管的主域的 R53 上创建子域 CNAME 吗?

  3. 我能否将路径从我的别名或 cname 传递到 ALB,例如: 如果我在我的 ALB 亚马逊中输入一个路径,给出如下 DNS 名称:“{DNS-ALB-name}.amazon.com/api/path1 这将从 API 应用程序获取它。 但是,如果我有别名或 CNAME,我如何将 {CNAME-domain}.com/api/apth1 或 {alias-domain}.com/api/path1 传递给 ALB 域,该域最终会将该路径传递给 API。或者我需要某种反向代理服务器吗?

  4. 我可以对别名记录集使用 SSL 吗?

  5. 我能否将主域从另一个 DNS 集成到 AWS R53 ss 就好像 R53 具有该 TLD 一样?

  1. 您需要将域迁移到 Route53 或委托它

  2. 如果我正确理解你的问题 - 是

  3. 假设我正确理解了您的问题:路径和域名确实是分开的,除非您重定向。在这种情况下,CNAME 将简单地将请求指向负载均衡器,因此域名实际上并不重要

  4. SSL 被添加到资源,例如 ec2 服务器的负载平衡器,而不是 DNS 条目。创建别名并将其指向例如应用程序负载均衡器,您将能够向其添加证书。它与 AWS Certificate Manager

    完美集成
  5. 这就是所谓的 DNS 授权,是的,这是可能的