ПРОЕКТЫ 


  АРХИВ 


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: проблема с несколь кими fastcgi_pass



On Thu, Apr 02, 2009 at 05:36:38PM +0300, Dmytro Korochkin wrote:

> Добрый день,
> 
> У меня есть следующая конфигурация:
> ========================================
> ...
> upstream  api_checker_server  {
>         server 127.0.0.1:6500;
> }
> 
> upstream  aga_server  {
>        ip_hash;
>          server 10.10.10.1:6500;
> }
> 
> server {
>       listen   8081;
> 
>         location / {
>                    rewrite   /  $uri?service_type=aga_service  break;
>                     fastcgi_pass api_checker_server;
>                     include /etc/nginx/fcgi_params;
>                     fastcgi_intercept_errors on;
>                     error_page   404 =200 @aga;
>                     error_page   500 =200 @aga;
>                     error_page   502 =200 @aga;
> 
>         }
>                                                       
>       location @aga {
>                   # host and port to fastcgi server
>                   fastcgi_pass tile_server;
>                   fastcgi_param PATH_INFO $fastcgi_script_name;
>                   fastcgi_param REQUEST_METHOD $request_method;
>                   fastcgi_param QUERY_STRING $query_string;
>                   fastcgi_param CONTENT_TYPE $content_type;
>                   fastcgi_param CONTENT_LENGTH $content_length;
>                   fastcgi_param  SERVER_ADDR        $server_addr;
>                   fastcgi_param  SERVER_PORT        $server_port;
>                   fastcgi_param  SERVER_NAME        $server_name;
>                   fastcgi_param  SERVER_PROTOCOL    $server_protocol;
>                   fastcgi_pass_header Authorization;
>                   fastcgi_intercept_errors off;               
>       }
>                                                                               
>                                                                               
>   
> }
> ....
> ===================================
> За обоими fastcgi_pass стоят pylons.
> 
> Запрос от клиента проходит через первый fastcgi_pass и переходит ко
> второму. На нем я вижу что запрос передается корректно, правильно
> обрабатывается, но при ответе nginx выдает 502. При включении debug
> вижу сдежущее:
> 
> ===============================================
> 2009/04/02 10:53:02 [debug] 28038#0: *1 http upstream process header
> 2009/04/02 10:53:02 [debug] 28038#0: *1 malloc: 000000000069B760:4096
> 2009/04/02 10:53:02 [debug] 28038#0: *1 recv: fd:9 8 of 4096
> 2009/04/02 10:53:02 [debug] 28038#0: *1 http fastcgi record byte: 00
> 2009/04/02 10:53:02 [error] 28038#0: *1 upstream sent unsupported
> FastCGI protocol version: 0 while reading response header from
> upstream, client: 192.168.1.1, server: stressweb, URL:
> "/ID/1/256/5/17/10.png", upstream: "fastcgi://10.10.10.1", host:
> "192.168.1.10"
> ===============================================
> 
> Что интересно, если исключить fastcgi_pass из первого location, то все
> работает корректно:
> 
> 2009/04/02 11:36:58 [debug] 26859#0: *113 http fastcgi record byte: 01
> 
> Понимаю, проблема скорее всего не в nginx, но все же, где копать? Что
> такого шлет nginx в первом случае, что заставляет pylons выставлять
> record type 00?

Какая версия nginx'а ? Это было исправлено в 0.7.27.


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.