Иногда долго выполняющиеся запросы завершались неудачей с сообщением об ошибке “504: Gateway Timeout” в веб-сервере NGINX.

Чтобы решить эту проблему, необходимо увеличить таймаут запроса в конфигурации сервера NGINX.

По умолчанию таймаут запроса NGINX составляет 60 секунд.

Его можно увеличить или уменьшить путем обновления конфигурационных файлов.

В этом кратком FAQ вы узнаете, как изменить таймаут запроса в веб-сервере NGINX.

Увеличение тайм-аута запроса в NGINX

Например, вы хотите увеличить таймаут запроса до 300 секунд.

Тогда вам нужно добавить директивы proxy_read_timeout, proxy_connect_timeout, proxy_send_timeout в блок http или server.

Здесь блок http позволяет вносить изменения на всех серверах NGINX.

Чтобы внести изменения для всех серверов, отредактируйте основной конфигурационный файл NGINX и добавьте следующее содержимое в блок http.

http{
   ...
   proxy_read_timeout 300;
   proxy_connect_timeout 300;
   proxy_send_timeout 300;
   ...
}

Если вы хотите увеличить таймаут запроса только для определенного сервера или поддомена, то добавьте директивы только для его блока server.

Отредактируйте файл конфигурации конкретного серверного блока и добавьте следующие параметры:

server{
   ...
   proxy_read_timeout 300;
   proxy_connect_timeout 300;
   proxy_send_timeout 300; 
   ...
}

После внесения изменений необходимо перезапустить службу NGINX, чтобы применить изменения.

Системы, работающие с Systemd, могут использовать следующую команду.

sudo systemctl restart nginx 

Все готово, с помощью вышеуказанных изменений вы успешно увеличили таймаут запроса в сервере NGINX.

Заключение

Это руководство поможет вам увеличить таймаут запроса в веб-сервере NGINX.

см. также:

 

Поделитесь статьей:

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