Error 413

grigory nginx-forum на nginx.us
Вс Дек 26 19:12:52 MSK 2010


Привет всем.
Читал в документации про то, что
браузеры некорректно обрабатывают
ошибку 413.
Также читал одну из тех в этой
конференции, где давался патч, чтобы
можно было эту ошибку обрабатывать, но
там же, в теме, было написано, что с
определённой версии патч уже входит в
дистрибутив nginx.

Собственно, проблема в том, что у меня
не хочет обрабатывать эту ошибку.
Подскажите, пожалуйста, почему nginx не
хочет этого делать. Версия nginx -- 0.7.67.

Ошибку обрабатываю стандартно:
error_page 413 = /413;

При попытке закачать через веб-форму
общий объем файлов больше, чем размер
client_max_body_size, соединение просто
обрывается. Браузер пишет "Соединение
было сброшено", а сниффер пишет, что тип
ошибки -- NS_ERROR_NET_RESET.

Как можно обработать 413-ую ошибку nginx'ом?
Или патч-таки надо применить?
[code]Index: src/http/ngx_http_core_module.c
===================================================================
--- src/http/ngx_http_core_module.c	(revision 2391)
+++ src/http/ngx_http_core_module.c	(working copy)
@@ -917,6 +917,7 @@
                        "client intended to send too large body: %O
bytes",
                        r->headers_in.content_length_n);
   +        (void) ngx_http_discard_request_body(r);
          ngx_http_finalize_request(r,
NGX_HTTP_REQUEST_ENTITY_TOO_LARGE);
          return NGX_OK;
      }
[/code]

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,161200,161200#msg-161200




Подробная информация о списке рассылки nginx-ru