Загрузка больших файлов

Igor Sysoev is at rambler-co.ru
Mon Sep 5 16:30:55 MSD 2005


On Mon, 5 Sep 2005, Andrei Nigmatulin wrote:

> On Monday 05 September 2005 16:04, Andrew Velikoredchanin wrote:
>> Andrei Nigmatulin wrote:
>>> On Monday 05 September 2005 14:45, Igor Sysoev wrote:
>>>> On Mon, 5 Sep 2005, Andrei Nigmatulin wrote:
>>>>> При загрузке в fastcgi приложение файлов, чей размер больше
>>>>> client_max_body_size, nginx похоже просто закрывает соединение, не
>>>>> выдавая клиенту ничего. Можно ли как-то отловить эту ошибку, чтобы
>>>>> показать клиенту страничку с объяснениями где он не прав ?
>>>>
>>>> В каком браузере тестировалось ?
>>>> nginx выдаёт 413 ошибку, но вот не все браузеры умеют её показывать:
>>>> http://sysoev.ru/web/upload.html
>>>
>>> В Firefox 1.0.6 и Konqueror 3.4.0.
>>>
>>> Firefox выдает popup окно "Document contains no data"
>>>
>>> Konqueror выдает страницу с ошибкой
>>>
>>> An error occurred while loading http://xxxxx.ru/upload.phtml:
>>> Connection to host xxxxx.ru is broken.
>>>
>>> Как я понял из статьи, как только веб сервер получает от клиента
>>> Content-Length, он может ответить клиенту 413 и закрыть соединение на
>>> чтение, спровоцировав broken pipe в броузере ? А как делает nginx ?
>>
>> Я с таким сталкивался. Такое бывает когда коннект с клиентом медленный,
>> у буферы tcp_*mem большие. Если nginx не успевает заполнить буфер
>> передачи за время send_timeout из его конфига, в нем срабатывает таймоут
>> и связь с клиентом обрывается без разговоров.
>
> Да, это немного похоже на мой случай. tcpdump показывает, что посередине
> закачиваемого файла nginx рвет соединение, по времени - через 60 сек после
> ответа 413. Однако, в конфиге у меня:
>
>    client_header_timeout  1m;
>    client_body_timeout    3m;
>    send_timeout           2m;
>
> Чего-то я не понимаю ;-)

А можно сделать отладочный запрос ?


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list