ПРОЕКТЫ 


  АРХИВ 


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: расширение return



On Fri, Jun 18, 2010 at 02:05:17PM +0400, Igor Sysoev wrote:

> On Thu, Jun 17, 2010 at 02:20:52PM +0400, Igor Sysoev wrote:
> 
> > On Thu, Jun 17, 2010 at 02:15:22PM +0400, Igor Sysoev wrote:
> > 
> > > On Thu, Jun 17, 2010 at 11:07:12AM +0100, Valery Kholodkov wrote:
> > > 
> > > > О, можно будет сделать более универсальный eval:
> > > > 
> > > > eval $a {
> > > >     return 200 "blah";
> > > > }
> > > 
> > > А какая семантика ?
> > > 
> > > Вообще-то я не хочу ничего добавлять в этот мерзкий rewrite модуль,
> > > но return мне нравится. Да и понадобилось по работе.
> > 
> > Я бы ещё сделал
> > 
> >   location /old/ {
> >       location ~ ^/old(.+)$ {
> >           return  http://site.com$1;
> >       }
> > 
> > или
> > 
> >   location /old/ {
> >       location ~ ^/old(.+)$ {
> >           return  301  http://site.com$1;
> >       }
> > 
> > Вот такую личную неприязнь я испытываю к rewrite, что кушать не могу!
> 
> Итак, патч. Варианты использования:
> 
>     # старые
>     return  204;
>     return  404;
>     return  500;
> 
>     # новые
>     return  200;
>     return  200  "OK\n";
>     return  404  "not found\n";      # не перехватывается error_page
>     return  301  http://site.ru$request_uri;
>     return  302  http://site.ru$request_uri;
>     return  303  http://site.ru$request_uri;
>     return       http://site.ru$request_uri;     # по умолчанию 302
>     return       https://site.ru$request_uri;    # по умолчанию 302
>     return       $scheme://site.ru$request_uri;  # по умолчанию 302

Во втором параметре можно использовать переменные:

      return   404   '"$request_uri" not found\n';


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

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.