fastcgi_send_timeout
Устанавливает таймаут отправки ответов серверу FastCGI. — NGINX HTTP Core
Описание
Директива `fastcgi_send_timeout` задает максимальное время, в течение которого NGINX будет ждать ответа от сервера FastCGI. Если это время превысит предел, NGINX завершит соединение с сервером FastCGI и вернет клиенту ошибку. Значение указывается в миллисекундах и помогает предотвратить задержки, вызванные неотзывчивыми приложениями FastCGI. Директиву можно устанавливать на уровнях блоков `http`, `server` или `location`, что обеспечивает гибкую конфигурацию в зависимости от конкретного случая использования. При настройке `fastcgi_send_timeout` важно выбрать подходящее значение, исходя из ожидаемого времени ответа вашего FastCGI-бэкенда. Слишком короткий таймаут может приводить к необоснованным ошибкам для обычных запросов, тогда как слишком длинный — задерживать обработку неотзывчивых запросов. Поведение директивы можно дополнительно уточнить, используя ее совместно с другими директивами, такими как `fastcgi_read_timeout` и `fastcgi_buffering`, что эффективно контролирует как обработку ответов, так и стратегию таймаутов.
Пример конфига
location /app {
include fastcgi_params;
fastcgi_pass backend;
fastcgi_send_timeout 30s;
}Установка слишком малого значения времени ожидания может привести к преждевременному завершению действительных запросов.
Если не настроить эту директиву совместно с `fastcgi_read_timeout`, это может привести к несогласованному поведению при длительной обработке.