我有一个分配了多个IP地址的域,这样如果其中一个服务器处于脱机状态,客户端就会自动检查另一个服务器。 Nginx的配置类似于:
server {
listen 80;
location / {
proxy_pass http://backend;
}
}
upstream backend {
server localhost:1234;
}
然而,当1234的服务失败时,nginx开始返回错误502(这是预期的),并且客户端不会尝试下一个IP。但是,如果我完全停止在失败的实例上的nginx - 例如开始监听80,客户端连接到另一个工作服务器。
如果上游离线,有没有办法配置nginx拒绝与服务器端口的连接?
答案 0 :(得分:0)
为什么不使用后备位置?
将此添加到您的位置(更改)
try_files $uri @my_fallback;
location @my_fallback {
proxy_pass http://example.com:12345; #other url here
}