Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: rewrite в именованны й location
Hello!
On Thu, Jul 30, 2009 at 04:51:42PM +0400, Igor Sysoev wrote:
> On Thu, Jul 30, 2009 at 04:49:20PM +0400, Maxim Dounin wrote:
>
> > Hello!
> >
> > On Thu, Jul 30, 2009 at 02:49:58PM +0400, Igor Sysoev wrote:
> >
> > > On Thu, Jul 30, 2009 at 02:23:28PM +0400, Alex, the Marrch Ca'at wrote:
> > >
> > > > > так оно и без патча так работает
> > > > > еггог_паге в именованный location {}
> > > >
> > > > Как уже заметил не только я, эмулировать ошибку ради того, чтобы
> > > > сделать по сути тот же rewrite - некрасиво, непонятно и неправильно.
> > > > Разумеется, данная фича - типичный syntax sugar, ну так именно syntax
> > > > sugar и отличает все языки программирования от машинных кодов :D
> > >
> > > rewrite - это плохой сахар, не отражающий смысл действия.
> >
> > Не полностью согласен. Мне вообще усиленно кажется что
> > именованные location'ы должны работать везде, где работает
> > внутренний редирект. Это IMHO логично.
> >
> > Сделать отдельную директиву, которая бы делала переход безусловно
> > (аналог rewrite ^ ..., но с более разумным названием) возможно
> > имеет смысл. Но всё же не вместо, а вместе с.
>
> Про редирект в @location согласен, но вот именно rewrite - это плохой сахар.
Хороший сахар - тростниковый, да и то если добавить мяты и лайма
(вместе с содовой и ромом, ага). ;)
По факту сейчас для аналогичных задач работает исключительно error_page +
return (ну можно еще try_files, но это лишний syscall и
придумывать имя файла которого никогда не будет), и imho этот
сахар хуже.
Если же редирект будет везде уметь @location - то rewrite его так и так
будет уметь. Разве что rewrite покрантить вообще. :)
Maxim Dounin
|