我想将来自一系列端口的所有请求代理传递到单个端口。我能够将单个端口代理传递到另一个端口,如下所示:
server {
listen 3333;
server_name test.in *.test.in;
location / {
proxy_pass http://10.1.1.2:5479/;
include /etc/nginx/proxy_params;
}
}
因此,当我尝试 test.in:3333 时,它会重定向到 10.1.1.2:5479。
以同样的方式我需要代理传递这些:
test.in 4440 to 10.1.1.2:5479
test.in 4441 to 10.1.1.2:5479
test.in 4442 to 10.1.1.2:5479
我怎样才能做到这一点?
答案1
它也在工作...
server {
listen 4442;
listen 4441;
listen 4443;
listen 4444;
location / {
proxy_pass http://10.1.1.2:5479/;
include /etc/nginx/proxy_params;
}
}
答案2
您应该能够通过设置多个server
块来做到这一点,类似于您的示例中的块,监听不同的端口(4440、4441 和 4442)并具有相同的 proxy_pass 配置部分。
例如:
server {
listen 4440;
location / {
proxy_pass http://10.1.1.2:5479/;
include /etc/nginx/proxy_params;
}
}
server {
listen 4441;
location / {
proxy_pass http://10.1.1.2:5479/;
include /etc/nginx/proxy_params;
}
}
server {
listen 4442;
location / {
proxy_pass http://10.1.1.2:5479/;
include /etc/nginx/proxy_params;
}
}