Ошибка 504 gateway time-out в nginx
- Recluse
- 04.05.2017
- 5 103
- 0
- 18.03.2019
- 1
- 1
- 0
- Содержание статьи
Описание проблемы
Если, при выполнении какого-либо PHP приложения/скрипта/страницы, вы стали внезапно получать ошибку следующего содержания:
504 Gateway Time-out
nginx как веб-сервер
В случае использования nginx как веб-сервера, вы скорее всего столкнулись с php скриптом, выполнение которого занимает очень долгое время, в результате чего веб-сервер просто остановил его работу. Для того, чтобы исправить это, нужно сделать следующее:
Открываем конфиг сервера nginx, где прописаны параметры нужного вам хоста, и пишем туда следующую строку:
fastcgi_read_timeout 300;
В итоге должно получиться что-то примерно следующее:
location ~ \.php$ {
try_files $uri = 404;
include fastcgi_params;
fastcgi_pass unix:/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_read_timeout 300;
}
nginx как прокси сервер
Если же вы используете nginx как прокси сервер, то копать нужно уже немного в другом направлении. Открываем конфиг, отвечающий за проксирование и добавляем туда следующее:
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;
После любых правок обязательно перезагружаем конфиг nginx:
systemctl reload nginx
или
nginx -s reload
Добавить комментарий