为 HTTP API 设置自定义域名 - Amazon API Gateway
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

为 HTTP API 设置自定义域名

自定义域名 是您可以提供给 API 用户的更简单、更直观的 URL。

部署 API 后,您 (和您的客户) 可以使用以下格式的默认基本 URL 调用 API:

https://api-id.execute-api.region.amazonaws.com/stage

其中 api-id 由 API Gateway 生成,region(AWS 区域)由您在创建 API 时指定,stage 由您在部署 API 时指定。

URL 的主机名部分(即 api-id.execute-api.region.amazonaws.com)是指 API 终端节点。默认 API 终端节点难于重新调用,对用户不友好。

使用自定义域名,您可以设置 API 的主机名,并选择基本路径(例如 myservice)以将备用 URL 映射到 API。例如,一个更为用户友好的 API 基本 URL 可以变成:

https://api.example.com/myservice

如果您没有在自定义域名下设置任何基本映射,生成的 API 的基本 URL 与自定义域相同(例如,https://api.example.com)。在这种情况下,自定义域名不能支持多个 API。

注意

自定义域可以与 REST API 和 HTTP API 关联。您可以使用 API Gateway 版本 2 API 创建和管理 REST API 和 HTTP API 的区域自定义域名。

对于 HTTP API,TLS 1.2 是唯一受支持的 TLS 版本。

注册域名

您必须拥有已注册的 Internet 域名,以便为 API 设置自定义域名。如果需要,您可以使用 Amazon Route 53 或使用您选择的第三方域注册商注册 Internet 域。API 的自定义域名可以是已注册 Internet 域的子域或根域(也称为“顶级域”)的名称。

在 API Gateway 中创建自定义域名后,您必须创建或更新 DNS 提供商的资源记录以映射到 API 终端节点。如果没有此类映射,针对自定义域名的 API 请求无法到达 API Gateway。

区域自定义域名

为区域 API 创建自定义域名时,API Gateway 为 API 创建区域域名。您必须设置将自定义域名映射到区域域名的 DNS 记录。您还必须为自定义域名提供证书。

自定义域名的证书

要为支持 ACM 的区域中的自定义域名提供证书,您必须从 ACM 请求证书。要为不支持 ACM 的区域中的区域自定义域名提供证书,您必须在该区域中将证书导入到 API Gateway。

要导入 SSL/TLS 证书,您必须针对自定义域名提供 PEM 格式的 SSL/TLS 证书文本、其私有密钥和证书链。存储在 ACM 中的每个证书均由其 ARN 标识。要针对域名使用 AWS 托管的证书,您只需参考其 ARN 即可。

通过 ACM 可以轻松地为 API 设置和使用自定义域名。您可以为给定的域名创建证书(或导入证书),使用 ACM 提供的证书的 ARN 在 API Gateway 中设置域名,然后将自定义域名下的基本路径映射到 API 的已部署阶段。如果佣有 ACM 颁发的证书,那么您就无需担心公开任何敏感的证书详细信息,如私有密钥。

有关设置自定义域名的详细信息,请参阅在 AWS Certificate Manager 中准备好证书在 API Gateway 中设置区域自定义域名