[Хд] logo

Что делать с ошибкой upstream timed out в Nginx

Практика показывает, что ошибка upstream timed out (110: Connection timed out) может возникать в двух случаях. Причем название самой ошибки указывает на решение — необходимо увеличить время ожидания в настройках веб-сервера. upstream timed out Nginx

Nginx в качестве proxy или reverse proxy

В этом случае ошибка может возникать, если истекло время ожидания на чтение ответа от прокси-сервера.

То есть Nginx отправил запрос и не дождался ответа. Если вы уверены, что ваше веб-приложение работает корректно, то необходимо увеличить этот таймаут в файле конфигурации nginx.conf в секции location:

location / { 
	...
	proxy_send_timeout 150; 
	proxy_read_timeout 150; 
	...
}

# Установка времени ожидания на отправку и чтение ответа, в секундах

Nginx с подключенными FastCGI-серверами

В этом случае ошибка возникает, если истекло время ожидания на чтение ответа от подключенных сервисов или приложений, PHP-FPM, к примеру.

Решение такое же банальное, как и в первом случае — необходимо увелчить время ожидания:

location ~* .php$ {
	include   fastcgi_params;
	...
	fastcgi_read_timeout 150;
	...
}

# Время ожидания на чтение ответа, в секундах

Самое главное

Прежде чем увеличить время ожидания, которое в данном случае по умолчанию составляет 60 с, следует проверить работоспособность всех компонентов и модулей. Если же все работает как нужно, то увеличение таймаута будет самым простым решением проблемы.

  read in english
[Хд]

Подписывайтесь на отборные материалы по продвинутой разработке

Google Email

Esc, чтобы подписаться позже