ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 411 Length Required, XMLHtt pRequest POST запрос через JQuery.



On Thu, Aug 21, 2008 at 03:48:02PM +0400, Владислав Комиссаров wrote:

> Пытаюсь сделать Ajax POST запрос через популярный javascript framework
> - "Jquery". Запрос подвисает где-то на секунду и, посмотрев через
> FireBug, я получаю:
> 
> <html>
> <head><title>411 Length Required</title></head>
> <body bgcolor="white">
> <center><h1>411 Length Required</h1></center>
> <hr><center>nginx/0.7.11</center>
> </body>
> </html>
> 
> uname -a
> Linux 1837.ovz23.hc.ru 2.6.18-028stab053.14 #1 SMP Thu Jun 19 12:56:23
> MSD 2008 i686 GNU/Linux
> 
> /usr/local/nginx/sbin/nginx -v
> nginx version: nginx/0.7.11
> 
> Debug log и конфиги прилагаются.
> 
> У меня подозрение на эту часть дебаг лога.

Лог не полный.

Прилагаемый патч должен помочь.


-- 
Игорь Сысоев
http://sysoev.ru
Index: src/http/ngx_http_special_response.c
===================================================================
--- src/http/ngx_http_special_response.c        (revision 1510)
+++ src/http/ngx_http_special_response.c        (revision 1511)
@@ -327,7 +327,6 @@
 ngx_int_t
 ngx_http_special_response_handler(ngx_http_request_t *r, ngx_int_t error)
 {
-    ngx_int_t                  rc;
     ngx_uint_t                 i, err;
     ngx_http_err_page_t       *err_page;
     ngx_http_core_loc_conf_t  *clcf;
@@ -336,12 +335,6 @@
                    "http special response: %d, \"%V?%V\"",
                    error, &r->uri, &r->args);
 
-    rc = ngx_http_discard_request_body(r);
-
-    if (rc == NGX_HTTP_INTERNAL_SERVER_ERROR) {
-        error = NGX_HTTP_INTERNAL_SERVER_ERROR;
-    }
-
     r->err_status = error;
 
     if (r->keepalive) {
@@ -386,6 +379,10 @@
         }
     }
 
+    if (ngx_http_discard_request_body(r) != NGX_OK) {
+        error = NGX_HTTP_INTERNAL_SERVER_ERROR;
+    }
+
     if (clcf->msie_refresh
         && r->headers_in.msie
         && (error == NGX_HTTP_MOVED_PERMANENTLY


 




Copyright © Lexa Software, 1996-2009.