繁体   English   中英

AWS:如何为自定义域名配置 Cloudfront

[英]AWS: How to configure Cloudfront for Custom Domain Names

我的设置:

API 网关- 10 个 API (api1, api2,...),全部映射到一个自定义域名 (api.xxx.com)

Route53 - api.xxx.com 指向我的 Cloudfront 分布

Cloudfront - 已创建分发,api.xxx.com 设置为 CNAME

我需要知道的- 我想将此 Cloudfront 的 Origin 设置为此自定义域名,因此我可以调用诸如api.xxx.com/api1/endpointapi.xxx.com/api2/endpoint 之类的 API。 但是怎么做? I used API Gateway Name of my api.xxx.com Custom Domain name (xxxxxxx.execute-api.us-east-1.amazonaws.com) for default behaviour Origin name and assumed that requests to all 10 APIs will be routed correctly,但它没有发生,

什么有效:我使用 api1 的 Invoke Url 创建了 Origin 名称并将其分配给默认行为。 所以现在,当我调用“https://api.xxx.com/endpoint”时,会调用 api1。 这是有道理的,但问题是 -我需要 API 的路径成为 url 的一部分,例如“https://api.xxx.com/api1/endpoint”,以便我可以区分它们。

什么不起作用:但我需要在发行版中设置几个 API,以便我可以将它们称为“https://api.xxx.com/api1/endpoint”等。 And if I use Invoke URL as the Origin name for the API, I cannot attach this api name also to the URL, that returns 403. I was hoping that if I used "API Gateway domain name" of "Custom Domain Names" (after所有,它的格式为 xxxxx.execute-api.us-east-1.amazonaws.com),然后我可以在 URL 中使用 API,但这不起作用。 我什至不能使用这个“API 网关域名”通过 Postman 调用单个 api。 有人可以建议我怎么做吗? 如何配置 Cloudfront 以便它可以调用各种 API 并在 url 中使用它们的路由?

我的设置与你的有点不同,但似乎我们想要实现相同的目标。

我有四个通过云端提供服务的 S3 存储桶。 一桶是根网站; 其他 3 个存储桶包含 3 个不同的管理面板

对于每个 s3 存储桶,我创建了一个单独的来源; 我相信您应该为每个单独的 api 创建一个原点。

我为每个原点组添加了两个路径模式; 我相信对于您的 api,每个 api 可以有一个模式。 路径模式可能看起来像 /api1/* ,它指向 api1 的原点

不确定您是否尝试为所有 api 添加来源; 请让我知道这是否有帮助。

终于找到了一个解决方案,在这个讨论线程中有更详细的描述。 我的问题是我试图直接从 Cloudfront 使用指向自定义域名 (xxxxxxxxxxxx.execute-api.us-east-1.amazonaws.com) 的链接,但我应该使用“好”、可读的地址作为源名称和在 Route53 中进行重定向

工作设置:

  1. 在API网关中,创建自定义域名regional-api.xxx.com,端点类型Regional(xxxxxxxxxxxx.execute-api.us-east-1.amazonaws.com)。
  2. 在Route53中,A和AAAA记录mapregional-api.xxx.com到Region endpoint目标域名。
  3. 创建的 Cloudfront 分发使用 region-api.xxx.com 作为源域名,使用 api.xxx.com 作为 CNAME。
  4. 在Route53中,A和AAAA将map api.xxx.com记录到新创建的CF分布的域名中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM