我试图使用API网关将通信路由到内部网络负载平衡器。
到基本路径(/)所有路由都工作,所以我知道VPC Link是启动并且可访问。
我添加了一个代理资源(/ {代理+})中,用任何HTTP方法。在ANY“结合请求”我选择:
我可以看到我的Web服务器重定向响应:
(b9d0c629-31ec-11e8-b452-0f13c3c62b81) Endpoint response body before
transformations: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>Redirecting...</title>
<h1>Redirecting...</h1>
<p>You should be redirected automatically to target URL: <a href="http://abcd1234.cloudfront.net/api/">http://abcd1234.cloudfront.net/api/</a>. If not click the link.
(b9d0c629-31ec-11e8-b452-0f13c3c62b81) Method completed with status: 301
该网页显示:
{"message":"Forbidden"}
另外,如果我尝试直接链接到CloudFront的URL,我得到了同样的错误。
除了CloudFront的URL,我也试过如下:
应在合并请求的“端点URL”字段是什么网址?
一切似乎是为了在你的API网关的配置,包括端点URL。
我的猜测是,你是搞乱了重定向的东西。有没有可能是您的服务器重定向到同一个地方一次又一次地,或重定向规则总是适用?
可以肯定的是,问题是在你的服务器端,尽量简单的设置了。尝试使API调用的地方,不会重定向,只返回一个简单的回应。
事实证明,该API网关必须调用以“http”而不是“https”时的VPC链接,VPC链接URL。