2017-02-02 4 views
0

У меня есть следующая конфигурация nginx для моего балансира нагрузки обратной прокси.NGINX Load Balancer маршрутизация на другой ip при ошибке запроса

upstream appserver{ 
    server 192.168.1.101:3800; 
    server 192.168.1.102:3800; 
    server 192.168.1.103:3800; 
    server 192.168.1.104:3800; 
} 
server { 
    location /api { 
     proxy_pass   http://appserver; 
    } 
} 

Если случайно или безошибочный мой один экземпляр узла взлом или получений рестарта в середине обработки запроса, моя балансировка нагрузки перенаправляет запрос на другой IP в обратном прокси. Я не хочу, чтобы это произошло. Я хочу, чтобы он не перенаправлял и не возвращал обратно 500 или что-то еще.

ответ

2

Если я правильно понял ваш запрос правильно, я думаю, что вам нужно proxy_next_upstream off;

http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_next_upstream

+0

Спасибо брат ... Ты спас мою жизнь ... –

+0

Вы радушны. Удачи. –

+0

@Failsal, как обычно, запросы с неидемпотентным методом (POST, LOCK, PATCH) не передаются на следующий сервер, если запрос отправлен на восходящий сервер (1.9.13). Я использую 1.10.1, но все же методы POST идут к следующему серверу вверх. –

Смежные вопросы