@belyaevcyrill

Как настроить у Nginx такую возможность?

Nginx выступает в качестве проксирующего web-сервера. Он перенаправляет все запросы к web-серверу внутренней сети. Как сделать, чтобы Nginx сразу показал, что внутренний web-сервер недоступен, если пользователь попытается набрать адрес в адресной сроке браузера? Сейчас приходится ждать, пока Nginx покажет ошибку 502
  • Вопрос задан
  • 151 просмотр
Решения вопроса 1
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
Например, через модуль upstream:
upstream intraserver {
  server internal-ip:port max_fails=2 fail_timeout=10;
  server 127.0.0.2:8880 backup;
}

server {
  listen 127.0.0.2:8880;
  return 502;
}
server {
...
proxy_pass http://intraserver;
...
}

max_fails - кол-во ошибок соединения или в ответах (определяется перед proxy_pass функцией) за период fail_timeout, начиная с которого апстрим считается упавшим;
backup - параметр, указывающий, что туда надо переводить, если все остальные апстримы лежат, в конфиге он отдает на всё 502.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы