如何在 AWS 上设置正向代理以仅将特定请求转发到反向连接代理?

如何在 AWS 上设置正向代理以仅将特定请求转发到反向连接代理?

我不需要对此进行详细说明,但我认为我在概念上对自己正在尝试做的事情感到困惑,这让研究变得困难。想法如下:

我有一个使用 NGINX 作为反向代理的 EC2 实例。我希望所有传出请求都能正常继续,但我希望正向代理仅将特定请求(例如)转发example.com到反向连接代理服务。如何在 AWS 上实现这一点,或者我的想法是否正确?我需要正向代理吗?还是 VPC 路由表可以实现这一点?

答案1

是的,这可以通过基于主机的路由使用 AWS 中的应用程序负载均衡器来实现

https://aws.amazon.com/blogs/aws/new-host-based-routing-support-for-aws-application-load-balancers/

您现在可以创建应用程序负载均衡器规则,根据 Host 标头中指定的域名路由传入流量。对 api.example.com 的请求可以发送到一个目标组,对 mobile.example.com 的请求可以发送到另一个目标组,而所有其他请求(通过默认规则)可以发送到第三个目标组。您还可以创建结合基于主机的路由和基于路径的路由的规则。这样您就可以将对 api.example.com/production 和 api.example.com/sandbox 的请求路由到不同的目标组。

本教程提供了一个示例配置,您Host可以在其中配置一个标题,在您的情况下example.com,它可以指向不同的目标组。

这也可以通过 nginx 实现,但当你已经拥有 AWS 提供的服务时,这会变得更加困难和毫无意义

相关内容