如何将传入请求转发到主机上的80端口到x端口,其中x是传入请求参数

问题描述 投票:0回答:1

我的主机在5个不同的端口(5000-5004)上运行着5个服务。我的主机不接受80以外的任何端口上的远程连接。因此,我需要在端口80上运行某些服务,该服务可以接受传入请求(例如http://1.1.1.1:80?5000),并将其转发到请求中提到的端口(此处为5000)。是否可以通过Nginx还是我需要任何其他负载均衡器?

nginx load-balancing reverse-proxy nginx-reverse-proxy nginx-config
1个回答
0
投票
server {

    listen 80;
    server_name example.com #or your ip, or your host if you prefer

    location / {

        proxy_pass http://your_service_ip.com:$args;

    }

}

$ args包含“?”之后的任何东西。

当然,这是一个基本示例,您应该添加将代理正确传递到服务所需的所有参数。另一种方法是将args映射到名为port和proxy的变量到该端口。

© www.soinside.com 2019 - 2024. All rights reserved.