fastcgi_send_timeout
Устанавливает таймаут отправки ответов серверу FastCGI.
Описание
Директива 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, это может привести к несогласованному поведению при длительной обработке.