我在 Amazon API Gateway 的 Amazon CloudWatch 执行日志中看到“Execution failed due to configuration error: Invalid endpoint address”(由于配置错误导致执行失败:端点地址无效)错误。是什么导致了这个错误,我该如何修复?
简短描述
与后端 HTTP 或 HTTPS 终端节点通信时,API Gateway 使用方法请求的 Endpoint URL (终端节点 URL) 值中配置的域。在向端点 URL 发送请求之前,API Gateway 通过执行域名服务器 (DNS) 解析来解析域。如果 API Gateway 无法解析端点 URL 中的域,则 CloudWatch 执行日志中将显示以下错误:
Execution failed due to configuration error: Invalid endpoint address
解决方法
要排查此错误,请执行以下操作:
1. 要确认 DNS 解析是否成功,请运行名称解析命令,例如 dig 或 nslookup。如果 DNS 解析成功,则命令响应将返回有效的公共 IP 地址。
**注意:**请通过系统的默认命令提示符,对 Linux 操作系统使用 dig,对 Windows 操作系统使用 nslookup。
示例 dig,命令:
$ dig www.amazon.com
; <<>> DiG 9.10.6 <<>> amazon.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13150
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.amazon.com. IN A
;; ANSWER SECTION:
www.amazon.com. 41 IN A 54.239.17.6
;; Query time: 1 msec
;; SERVER: 10.3.9.10#53(10.3.9.10)
;; MSG SIZE rcvd: 48
示例 nslookup,命令:
$ nslookup amazon.com
Server: 10.3.9.10
Address: 10.3.9.10#53
Name: amazon.com
Address: 54.239.25.192
2. 如果该命令返回 Amazon Virtual Private Cloud (Amazon VPC) 中的私有 IP 地址,则设置 API 私有集成。 **注意:**API Gateway 私有集成允许 Amazon VPC 之外的客户端访问您的 HTTP 和 HTTP 资源。
-或者-
如果命令没有返回有效的公有 IP 地址,请联系您的 DNS 提供商。要求他们确认已正确设置域的 DNS 映射。