502 Bad Gateway в процессе рестарта php5-fpm

Есть ли способ заставить nginx ждать какое-то время пока апстрим в дауне, а не выдавать 502 ошибку?

Вот это всё не помогает:
    keepalive_timeout 600;
    send_timeout 600;
    proxy_send_timeout 600;
    proxy_read_timeout 600;
    fastcgi_read_timeout 600;
    proxy_connect_timeout 600;
  • Вопрос задан
  • 3134 просмотра
Решения вопроса 1
opium
@opium
Просто люблю качественно работать
Самый простой способ это юзать два php-fpm на разных портах, обновили код в одной директории, переключили nginx на другой порт и сделали ему reload
А в nginx reload работает без сбрасывания клиентов.
делов настроить минут на 30.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Evengard
@Evengard
Тут дело не в том, что ждать/не ждать, а что ОС сразу даёт отлуп, поскольку сокет не может приконнектиться — php-fpm порт ещё не забиндил. Так что в общем случае, кроме извращенств с error_page, боюсь что нет
Ответ написан
Комментировать
max_mara
@max_mara
Как вариант, можно установить кастомную error_page, которая будет автоматически обновлятся через какое-то время.
Ответ написан
Комментировать
gaelpa
@gaelpa
А reload (SIGUSR2) в вашем случае не достаточно?
>> graceful reload of all workers + reload of fpm conf/binary
Ответ написан
Ваш ответ на вопрос

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

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