ПРОЕКТЫ 


  АРХИВ 


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: 0.6.30 @ linux amd64 & fcgi



On Thu, May 08, 2008 at 04:22:44AM +0000, Sergey Serov wrote:

> On Thursday 08 May 2008, Sergey Serov wrote:
> > On Thursday 08 May 2008, Sergey Serov wrote:
> > > On Wednesday 07 May 2008, Igor Sysoev wrote:
> > > > > А если попробовать прилагаемый патч для 0.5.27 ?
> > > >
> > > > -        if (rc == NGX_OK) {
> > > > +        if (rc == NGX_OK && u->buffer.pos == u->buffer.last) {
> > >
> > > В логах появляется:
> > > 5.7006" 2008/05/08 03:22:42 [alert] 29070#0: *1 upstream split a header
> > > line in FastCGI records while reading response header from upstream,
> > > client: 125.24.35.220, server: dev.example.net, URL: "/login", upstream:
> > > "fastcgi://unix:/tmp/example_dev.sock:", host: "dev.example.net",
> > > referrer: "http://dev.example.net/registration";
> >
> > Скорее всего я каким-то образом ошибся в пред. тесте.
> > Пред. раз я пересобрал не полностью, а только то что сделал make после
> > изменений в одном файле. После make clean (на самом деле dpkg-buildpackage)
> > и полной пересборки появляется все то же сообщение про recv() failed (95:
> > Operation not supported
> >
> 
> Это мое утверждение о том, что пред. утверждение ложно - ложно :-)
> Вообщем на текущий момент я убежден, что:
>  if (rc == NGX_OK && u->buffer.pos == u->buffer.last) {
> дает в логах "upstream split a header".

Можно попробовать 0.6.30 с прилагаемым патчем  и прилать отладочный вывод 
в районе fastcgi headers ?


-- 
Игорь Сысоев
http://sysoev.ru
Index: src/http/modules/ngx_http_fastcgi_module.c
===================================================================
--- src/http/modules/ngx_http_fastcgi_module.c  (revision 1317)
+++ src/http/modules/ngx_http_fastcgi_module.c  (working copy)
@@ -1232,11 +1232,15 @@
         }
 
         if (rc == NGX_OK) {
-            return NGX_AGAIN;
+            continue;
         }
 
         /* rc == NGX_AGAIN */
 
+        if (u->buffer.pos != u->buffer.last) {
+            return NGX_AGAIN;
+        }
+
         ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
                        "upstream split a header line in FastCGI records");
 


 




Copyright © Lexa Software, 1996-2009.