如何排查 API Gateway 的“Execution failed due to configuration error: Invalid endpoint address”(由于配置错误导致执行失败:终端节点地址无效) 错误?

上次更新时间:2021 年 4 月 22 日

我在 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 解析是否成功,请运行名称解析命令,例如 nslookupdig
注意:命令响应应返回有效的公有 IP 地址。

(对于 Linux 操作系统)示例 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

(对于 Windows 操作系统)示例 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 映射。