如何为我的 API Gateway API 定义自定义域名?

上次更新时间:2020 年 5 月 22 日

我想要为 Amazon API Gateway API 使用自定义域名,而不是使用默认基本 URL。该如何进行设置?

简短描述

在 API Gateway 中,您可以创建边缘优化的自定义域名区域性自定义域名。这些类型的自定义域名之间有一些主要区别:

自定义域名类型 API 类型 目标终端节点 SSL/TLS 证书 域名
边缘优化 只有 REST API 才能使用边缘优化的自定义域名。 格式类似于 examplek7xoo.cloudfront.netAmazon CloudFront 分配 证书必须位于美国东部(弗吉尼亚北部)(us-east-1) AWS 区域。 域名必须是唯一的。(它作为 CNAME 附加到 CloudFront 分配终端节点,并且您不能将 CNAME 与多个 CloudFront 分配相关联。)
区域性 所有这些 API 类型都可以使用区域性自定义域名:
REST API
WebSocket API
HTTP API
格式类似于 examplevpz7.execute-api.us-west-2.amazonaws.com区域性 API 终端节点 证书必须与您的 API 位于同一区域内。 域名可以由位于不同区域的其他区域性自定义域名进行共享。

另外,请注意域名映射的以下主要区别:

解决方法

请求或导入 SSL/TLS 证书

在为 API 创建自定义域名之前,您必须从 AWS Certificate Manager (ACM) 请求 SSL/TLS 证书,或将 SSL/TLS 证书导入 ACM。有关更多信息,请参阅在 AWS Certificate Manager 中准备好证书

当请求或导入证书,请注意以下几点要求:

  • 为了通过域验证检查,证书必须包含自定义域名作为备用域名。有关使用 CloudFront 分配进行验证检查(针对边缘优化的自定义域名)的更多信息,请参阅持续增强 Amazon CloudFront 上的域安全性。区域性自定义域名具有类似的验证检查。
  • 对于边缘优化的自定义域名,ACM 证书必须位于美国东部(弗吉尼亚北部)(us-east-1) 区域。
  • 对于区域性自定义域名,ACM 证书必须与您的 API 位于同一区域内。

创建自定义域名

根据您的 API Gateway API 类型,请从以下选项中选择,以了解如何创建自定义域名:

测试自定义域名

  1. 使用创建自定义域名时指定的基本路径映射在域名上运行 curl 命令。
    注意:如需关于 curl 的更多信息,请参见 cURL 项目网站
  2. 验证对自定义域名的响应是否与调用 API 阶段 URL 时收到的响应相同。

这篇文章对您有帮助吗?


您是否需要账单或技术支持?