我有以下 nginx 设置:
upstream cluster_web {
ip_hash;
server 192.168.115.82 weight=3;
server 192.168.115.92 weight=2;
server 192.168.115.100 weight=2;
server 192.168.115.95 weight=3;
server 192.168.115.103 weight=1;
}
server {
location /app1/ {
proxy_pass http://192.168.115.92;
}
location / {
proxy_pass http://cluster_web;
}
}
问题是,用户访问 / 位置后,无法到达位置规则 /app1/ 中定义的服务器,因为 nginx 显然正在使用上一个请求的上游设置中的 ip_hash 服务器。我是否缺少某些设置?这是正确的吗?顺便说一句,我有两个反向代理服务器,一个在互联网上,另一个用于 LAN 用户。
此致!
答案1
这不是一个错误。
我必须在 proxy_pass 指令之后使用 break;。