sub_filter в if

Igor Sysoev is at rambler-co.ru
Tue Jul 24 22:29:33 MSD 2007


On Tue, Jul 24, 2007 at 10:19:42PM +0400, gentoo at inbox.ru wrote:

> Здравствуйте, Igor.
> 
> Вы писали 24 июля 2007 г., 22:03:39:
> 
> > On Tue, Jul 24, 2007 at 08:41:30PM +0400, gentoo at inbox.ru wrote:
> 
> >> Возникла следующая необходимость в изменении <title> на страницах.
> >> Привожу пример нерабочей конфигурации:
> >> 
> >>         if ($http_host = "host1.domain.com") {
> >>             sub_filter <title> '<title>test123</title>';
> >>             sub_filter_once   on;
> >>         }
> >> 
> >> Почему в if {} ? 
> >> Поддоменов в server {} много, для каждого нужно разный тайтл ставить. А вообще такого рода задачу решить при помощи nginx возможно?
> 
> > Не надо поддомены разруливать с помощью if. Не надо.
> > Для этого есть server {}. Оно для этого проектировалось и оптимизировалось.
> > А if - это заглушка.
> 
> 
> Я хотел всё в один server {} запихать, чтобы не плодить для поддоменов до кучи server {} с sub_filter

В принципе, такие вещи можно делать с помощью map в одном server:

map $http_host  $title  {
    host1.domain.com   test123;
    host2.domain.com   test456;
}

server {
    server_name  host1.domain.com host2.domain.com # 5 тысяч других имён
                                                   # для которых нужен title

    sub_filter <title> '<title>$title</title>';
}


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





More information about the nginx-ru mailing list