Перейти к содержанию

Исправляем 504 Gateway Time-out в NGINX

Обычно ошибка «504 Gateway Time-out» возникает, если в связке nginx + apache2,  бекэнд (apache2) перестает отвечать. Обычно это может быть связано с долгой отработкой скрипта, если выполняется «тяжелый» скрипт, либо скрипт работает некорректно и зависает во время исполнения.

Решением является увеличение времени соединения/ожидания   В файле настроек /etc/nginx/nginx.conf добавляем:

server {
 ... 
proxy_connect_timeout 600; 
proxy_send_timeout 600; 
proxy_read_timeout 600; 
send_timeout 600;
 ... 
}

После правок релодим сервис:

sudo service nginx reload

В нашем случае nginx будет ожидать 600 секунд ответа от Apache2 В большинстве случаев это является костылем, т.к. нужно править скрипт и выяснять почему скрипт некорректно работает, кроме случаев если заведомо известно, что выполняется тяжелый скрипт и на его обработку требуется значительное время (пример, выгрузка товаров в скриптах интернет-магазинов)

Опубликовано в рубрикеLinux

Оставьте первый коментарий

    Добавить комментарий

    Ваш адрес email не будет опубликован.