我正在探索使用AWS api网关通过HTTP调用调用lambda函数的选项。我有一个现有的Nginx负载均衡器,提供微服务。当我尝试添加一个位置块,将代理传递添加到aws api网关时,
location /foo {
proxy_pass <aws api gateway url>;
}
这是将主机名解析为IP,例如:10.20.30.40,但AWS API网关在直接从IP查询时返回400 Bad Request。
有没有办法可以从我现有的nginx服务器使用AWS API网关调用lambda?
答案 0 :(得分:1)
如您所知,如果您尝试通过IP访问,API网关将返回错误。您必须将代理配置为发送Host
标头,就像您直接访问API一样。根据nginx文档,这是通过proxy_pass_header
指令实现的。