[nginx] Ошибки nginx’a

[error] upstream timed out (Operation timed out) while reading response header from upstream

Эта ошибка появляется тогда, когда страница генерируется больше времени, чем установленный timeout front-end’a. Обычно она возникает когда nginx отправляет запросы дальше (на apache, на php-fpm, …) По умолчанию эти таймауты — 60 секунд. Поставим 180 (эти параметры прописываются в location):

proxy_send_timeout 180s;
proxy_read_timeout 180s;

Хочу заметить, что буква ‘s’ — обязательна. Без неё ошибок не будет, но и значения не будут учитываться.

 

[error] client intended to send too large body

Ошибка связана с определением размера передаваемого файла (скорее всего с размеров вложения). Решение: увеличить размер переменной

client_max_body_size 50m;

причём, переменная должны находится не внутри location, а в разделе http/server

[nginx] Ошибки nginx’a: 8 комментариев

  1. Борис

    Здравствуйте!

    У меня две секции location в файле настроек, одна начинается как
    location / {
    вторая
    location ~*(administrator|comprofiler)* {
    Скажите, пожалуйста, в чем разница, и где прописывать proxy_send_timeout 180s; proxy_read_timeout 180s; ?
    Ошибка такая:
    2015/12/23 11:22:02 [error] 7679#0: *716079 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 62.76.80.15, server: мой_сайт, request: «GET / HTTP/1.1», upstream: «http:/мой_сайт:81/», host: «мой_сайт», referrer: «http://мой_сайт/administrator/index.php?option=com_acymailing&ctrl=cpanel»

    1. skeletor Автор записи

      Разница в том, что будет срабатывать либо для конкретного location’a либо для всех в пределах server { }

      1. Борис

        Спасибо. Получается, поскольку реферер в ошибке указан как referrer: «http://мой_сайт/administrator/index.php?option=com_acymailing&ctrl=cpanel мне надо выбрать секцию location ~*(administrator|comprofiler)* { для изменения указанных параметров?

  2. Евгений

    Здравствуйте!
    Первая из описанных в вашей статье ошибок вылетает у меня при попытке отправить внутри скрипта запрос на удаленный сервер. Пробовал проставлять разные значения таймаутов вплоть до 1000s — не помогает. Может ли такая ошибка возникать из-за того, что удаленный сервер не отвечает моему скрипту, или это наверняка проблемы конфигурации? Заранее спасибо.

  3. spirit

    https://forum.nginx.org/read.php?21,238590,238623

    > > [error] 49927#0: *196 upstream prematurely closed connection while reading
    > > response header from upstream
    > В сообщение об ошибке четко указан виновник. Ваш php-fpm закрыл соединение и,
    видимо, убил скрипт до того, как отдать ответ.

    > large_client_header_buffers вообще не имеет отношения к чтению ответа от
    upstream-сервера.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*