ПРОЕКТЫ 


  АРХИВ 


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: rewrite+ proxy bind - Баг


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: rewrite+ proxy bind - Баг
  • From: Sergey Shepelev <temotor@xxxxxxxxx>
  • Date: Tue, 15 Dec 2009 10:43:10 +0300
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=bEg+MhIWYxOf7vMBz2dgJPijHnF3ZhzHEkwgGAHRyyg=; b=cyQhYR2LTnPk0N0SUmF7/gw0qwedCI4mLXIqBXHc5m1KFagUgTHnskz2v9/wCWAOpi 7OaI+w89QBVXBouTPcbJw6c8PndawTyvOhkxq0UTghXfWo1RU+OonfeecAAYfQ958J9w 0gmji+9RqeBQS0fIYtdjT02DDSh+fXEqJmHtc=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=YniHusVeNUBRSuuIb/HZUxcHc1ywml9qDv/h3myYNaHCaKyuCVfyEKaIJsBynDkCFr Rhkpy7Y+N6k73Y6IHQJHZ3qciKMpS2saLGLI1wgGczF90skV4dweb30VilXy2RTu06n0 9s0zb8z3klqm8xnP2s1jsMcx8PRzZcFelNCxQ=
  • In-reply-to: <9e15c7cd925be65ab6f8cae677e102e1.NginxMailingListRussian@xxxxxxxxxxxxxxx>
  • References: <9e15c7cd925be65ab6f8cae677e102e1.NginxMailingListRussian@xxxxxxxxxxxxxxx>

2009/12/15 Kirill <nginx-forum@xxxxxxxx>:
> Уважаемый Игорь. мы обнаружили ошибку в вашем удивительном веб сервере.
> Если вместе rewrite попытаться использовать proxy_bind то он не сработает
> По дебагу видно что pc->local будет пустым (видимо где-то обнуляется)
> Вот пример конфига где proxy_bind не сработает
> ---------------------------------
> user www-data;
> events {
>    use epoll;
> }
>
> http {
>    include       /etc/nginx/mime.types;
>    default_type  application/octet-stream;
>
>    access_log  /dev/null;
>
>    resolver 8.8.8.8;
>
>    server {
>    listen    127.0.0.44;
>    location / {
>        set $dir "/";
>        if ( $uri ~* ^/(.+)$ ) {
>        set $dir $1;
>        }
>       access_log  /var/log/nginx/127.0.0.44_access_log;
>       proxy_bind "127.0.0.44";
>       proxy_pass   "http://n1ck.name/2.php?$dir";;
>    }
>    }
> }
> -------
> если из этого примера убрать
>        if ( $uri ~* ^/(.+)$ ) {
>        set $dir $1;
>        }
> то nginx успешно перед proxy_pass сделает bind на 44 айпи
>
> Надеемся на получение заплатки.
> Спасибо!
>

Действительно, у вас в конфиге баг (if).

Вот заплатка:
--- f1  2009-12-15 10:36:11.543424434 +0300
+++ f2  2009-12-15 10:41:41.139866364 +0300
@@ -14,13 +14,9 @@
    server {
    listen    127.0.0.44;
    location / {
-       set  "/";
-       if (  ~* ^/(.+)$ ) {
-       set  ;
-       }
       access_log  /var/log/nginx/127.0.0.44_access_log;
       proxy_bind "127.0.0.44";
-      proxy_pass   "http://n1ck.name/2.php?";;
+      proxy_pass   "http://n1ck.name/2.php?$uri";;
    }
    }
 }

> Posted at Nginx Forum: 
> http://forum.nginx.org/read.php?21,30554,30554#msg-30554
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.