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

Andrew Velikoredchanin andy at atomail.com
Mon Sep 5 16:04:21 MSD 2005


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 из его конфига, в нем срабатывает таймоут 
и связь с клиентом обрывается без разговоров.

Лечится или уменьшением значений tcp_*mem, либо увеличением send_timeout.

-- 
Best regards, Andrew Velikoredchanin





More information about the nginx-ru mailing list