gpt4 book ai didi

nginx - nginx "upstream"指令是否有端口设置?

转载 作者:行者123 更新时间:2023-12-03 12:30:18 26 4
gpt4 key购买 nike

我用 upstreamproxy用于负载平衡。

指令 proxy_pass http://upstream_name使用默认端口,即 80。

但是,如果上游服务器不监听此端口,则请求将失败。

如何指定备用端口?

我的配置:

http{
#...
upstream myups{
server 192.168.1.100:6666;
server 192.168.1.101:9999;
}
#....
server{
listen 81;
#.....
location ~ /myapp {
proxy_pass http://myups:81/;
}
}

nginx -t:
[warn]: upstream "myups" may not have port 81 in /opt/nginx/conf/nginx.conf:78.

最佳答案

在您的上游配置中,您定义了端口( 6666 和 9999 ),这些是您的后端服务器需要监听的端口

在这种情况下,proxy_pass 指令不需要额外的端口配置。
你的 nginx 监听 port 81您在 listen 中定义的指示

这是你试图做的吗?

http {
#...
upstream upstream_1{
server 192.168.1.100:6666;
server 192.168.1.101:9999;
}

upstream upstream_2{
server 192.168.1.100:6661; // other backstream port if you use port 81
server 192.168.1.101:9991;
}

server {
listen 80;
#.....
location ~ /myapp {
proxy_pass http://upstream_1;
}
}

server {
listen 81;
#.....
location ~ /myapp {
proxy_pass http://upstream_2;
}
}
}

关于nginx - nginx "upstream"指令是否有端口设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3748517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com