При выполнении полного перезапуска apache2 в связке nginx+apache2, как добавить timeout для новых соединений?
Вопрос к знатокам nginx.
Есть связка nginx + apache2
Приходиться перезагружать apache2. Причем это приходиться делать не с помощью graceful, а с остановкой и повторным запуском.
Можно ли сделать следующим образом?
Если апач выключен, то для всех новых соединений nginx пытался бы в течении секунд 15 соединиться с апачем. Если не получилось, то пусть будет Bad gateway. А если апач стал доступен то все начинает работать в прежнем режиме.
Как я все это пытался настроить.
Выключил apache, тем самым выполнил имитацию фазы остановки apache2, и начал настраивать nginx. Хотел добиться чтобы при запросе на него был некоторый timeout.
Пробовал параметр proxy_connect_timeout - Defines a timeout for establishing a connection with a proxied server.
Поставил 60s. Но все вылетает в 5xx уже через секунду. Такое ощущение, что если порт не слушается, то это даже и не является establishing? :)
proxy_read_timeout - не подходит. Тут уже должно быть успешное соединение. proxy_send_timeout - аналогично.
Думал как-то эти параметры применить: proxy_next_upstream proxy_next_upstream_timeout proxy_next_upstream_tries
Тоже не получилось. :(
Есть ли какое-то решение для nginx или может есть решение с использованием какого-то другого продукта?