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