ПРОЕКТЫ 


  АРХИВ 


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 в именованный location


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: rewrite в именованный location
  • From: "Alex, the Marrch Ca'at" <marrch.caat@xxxxxxxxx>
  • Date: Thu, 30 Jul 2009 13:42:28 +0400
  • 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=Ajp1FTsm+7EgVtLFGIO4sHCSi4qbQoCppMCmebbF4DY=; b=k7LUXw2hIqeyfVyzQewd9C/Kl91hR2ll8KJ8udbbxCgXk3Mi1QDZyAmgh2tRLerHfC PEgWkZLTnp28wX7EQedHqvWhQrKQ5rhpViy3jZC8Urj9r8Id43jz+vPsrkPGgtHq9FaA S5G/I2KxjYjwU5FDLsxaBiflSebe5llm9P8Xg=
  • 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=tk5O3YiLrWGUeswzyy2Kuo0AUVgfcPXMx9hoOb5HbtogBTK6Ygm/crjwb7fhnHeygO yU/PrrXVMVRIOBk2sTep6VS6WNGfgMDDDFYh8hVMP6hWB7rPD1uWvyKvjEMdwg5svK0R gn0vy2rgCg/WghXNMHaCU23gMPS8CzbsIJ7x8=
  • In-reply-to: <20090730084137.GA76511@xxxxxxxxxxxxx>
  • References: <87iqhbu9c2.wl%catap@xxxxxxxx> <4A708125.3000506@xxxxxxxxxx> <20090730084137.GA76511@xxxxxxxxxxxxx>

Ну да. Вот живой пример из моего конфига:

    location ^~ /index.php {
        access_log /var/log/nginx/access_log main_cached;

        default_type text/html;
        memcached_gzip_flag 18;
        gzip on;
        gunzip on;

        set $memcached_key "TSites::Index::$host";
        memcached_pass localhost:11211;

        error_page 404 502 504 = @fcgi;
    }

    location ~ \.php$ {
        access_log /var/log/nginx/access_log main;
        fastcgi_pass   backend;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;
        include       /etc/nginx/fastcgi_params;
    }

    location @fcgi {
        internal;

        access_log /var/log/nginx/access_log main;
        fastcgi_pass   backend;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;
        include       /etc/nginx/fastcgi_params;
    }

Этот же код из @fcgi дублируется еще в двух location-ах, поскольку
извращаться с искусственным перенаправлением ошибки мне не хотелось. А
так везде можно написать goto @fcgi; - что будет и компактнее и
понятнее и проще поддерживать.

Sincerely yours -
Alex, the Marrch Ca'at

2009/7/30 Igor Sysoev <is@xxxxxxxxxxxxx>:
> On Thu, Jul 30, 2009 at 12:04:37AM +0700, Bokhan Artem wrote:
>
>> Kirill A. Korinskiy пишет:
>> >Собственно для тех, кому надоело видеть извращения типо:
>> >
>> >error_page 503=@name;
>> >return 503;
>> >
>> >Предлагаю патчик:
>> >
>> >http://catap.ru/blog/2009/07/28/nginx-rewrite-to-named-location/
>>
>> Игорь, просьба добавить этот функционал в основную ветку, если возможно.
>
> Я не совсем понимаю модель применения. Что-то вроде
>
>     location /one {
>         goto  @php;
>     }
>
>     location /two {
>         goto  @php;
>     }
>
>     location /three {
>         goto  @php;
>     }
>
>     location @php {
>         ...
>     }
>
> ?
>
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
>


 




Copyright © Lexa Software, 1996-2009.