amazon-web-services - 创建AWS Application Load Balancer规则,该规则可修剪请求的前缀,而无需使用其他反向代理,例如nginx,httpd

标签 amazon-web-services reverse-proxy elastic-load-balancer

基本上,我有一些服务。我想将每个带有前缀“/secured”的请求转发到server1端口80,并将所有其他请求转发到server2的端口80。问题是在server1上,我正在运行接受不带“/secured”前缀的请求的服务。换句话说,我想将每个请求(例如“http://example.com/secured/api/getUser”)作为“http://example.com/api/getUser”转发到server1(从请求的路径中删除/保护)。

使用AWS ALB,当前请求以http://example.com/secured/api/getUser的形式发送;这迫使我更新server1的代码,以便该代码处理带有/secured前缀(看起来不太好)的请求。

有什么简单的方法可以解决ALB问题吗?

谢谢。

最佳答案

我遇到了同样的问题,正如Mark指出的那样,您可以在服务器上使用反向代理并执行以下操作(这是Nginx配置):

server {
  listen 80 default_server;

  location /secured/ {
    proxy_pass http://localhost:{service_port}/;
  }
}

这将剥除/secured部分并将其他所有内容代理到您的服务。只要确保在服务端口后面有尾随/即可。

关于amazon-web-services - 创建AWS Application Load Balancer规则,该规则可修剪请求的前缀,而无需使用其他反向代理,例如nginx,httpd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39317685/

相关文章:

amazon-web-services - Windows EC2 中的 AWS CLI 无法使用角色访问 S3

c# - 消费者的 Amazon Kinesis KCL 客户端无法在 .NET 中运行

docker - NGINX反向代理到Docker应用程序

node.js - Elastic Beanstalk 如何知道 EC2 服务器是否繁忙?

amazon-web-services - 使用 AWS 负载均衡器的安全 Web 套接字 (wss)

performance - grails 从 CDN 提供 index.html

java - 从 AWS Credentials Provider 获取安全 token

https - 轻松的反向代理,可通过ssl提供图像

apache - 通过 apache 从外部服务器提供内容

amazon-web-services - 在 CloudFormation 模板中自动设置 ListenerRule 优先级