如何解决我的 API Gateway 自定义域名的 DNS 解析或 SSL 证书不匹配错误?

上次更新日期:2022 年 10 月 21 日

我为 Amazon API Gateway API 配置了一个自定义域名。我无法连接到域名并收到 DNS 解析或 SSL 证书不匹配错误。如何解决此问题?

简短描述

您可以为 API Gateway API 创建两种类型的自定义域名:区域或(仅适用于 REST API)边缘优化

解决方法

在为 API 创建自定义域名之前,您必须执行以下操作之一:

从 AWS Certificate Manager (ACM) 请求 SSL/TLS 证书。
–或者–
将 SSL/TLS 证书导入 ACM。

有关更多信息,请参阅在 AWS Certificate Manager 中准备好证书

获得 SSL/TLS 证书后,您可以按照说明为我的 API Gateway API 设置自定义域名

要连接到 API Gateway API 的自定义域名,您必须将 Amazon Route 53 配置为将流量路由到 API Gateway 端点

如果自定义域名的 DNS 记录未映射到正确的 API Gateway 域名,则 SSL 连接将失败。这是因为系统默认将返回 *.execute-api.<region>.amazonaws.com 证书,而非 SSL/TLS 证书。

要确认 DNS 映射是否正确,请从客户端运行以下命令:

$ nslookup <customdomainname>

输出应该是 API 网关域名。确保域名与 API 网关域名相匹配。如果使用 Route 53 别名记录进行 DNS 映射,则输出为 IP 地址。确保 IP 地址与 API 网关域名 IP 地址相匹配。

注意:

  • 配置 Route 53 时,必须创建公有或私有托管区。对于面向互联网的应用程序,想要将其资源提供给用户,请选择公有托管区。有关更多信息,请参阅使用托管区
  • Route 53 使用记录来确定将域的流量路由到何处。别名记录可以更轻松地对 AWS 资源进行 DNS 查询,而 CNAME(非别名)记录可以将 DNS 查询重定向到 AWS 资源之外。有关更多信息,请参阅在别名和非别名记录之间做出选择

这篇文章对您有帮助吗?


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