блого-заметки об администрировании и программировании (python, ruby, php). Траблшутинг в «примерах» и HOWTO.

😎 О себе | 📚 Литература и ресурсы | ⚡ Все посты | 📮 E-mail

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

Обычно ошибка "504 Gateway Time-out" возникает, если в связке nginx + apache2,  бекэнд (apache2) перестает отвечать. Обычно это может быть связано с долгой отработкой скрипта, если выполняется "тяжелый" скрипт, либо скрипт работает некорректно и зависает во время исполнения.
504 Gateway Time-out
Решением является увеличение времени соединения/ожидания   В файле настроек /etc/nginx/nginx.conf добавляем:

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

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

service nginx reload

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