- Содержание статьи
Описание проблемы
Если, при выполнении какого-либо 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

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