Аналог vhost_alias - map?

Panfilov Konstantin panfilov99 at mail.ru
Wed Jan 24 15:28:10 MSK 2007


Yury Yakubovsky wrote:
> Вроде можно реврайтом разбирать $http_host
> 
> 
> Но мне надо возможность блокировать выборочно. А не знаю как это
> реврайтом делать чтобы не сильно много отрицаний в конфиге прописывать
> 
> Потому у меня так пашет:
> 
>  #spisok domenov
>  map $http_host $domen  {
>  hostnames ;
>  include conf/conf_domen/spisok.conf;
>  }
> 
>  # spisok klientov
>  map $http_host $root  {
>  hostnames ;
>  include conf/conf_domen/example.com.conf;
> 
>  }
> 
>  #spisok subdomenov
>  map $http_host $sub  {
>  hostnames ;
>  include conf/conf_subdomen/example.com.conf;
> }
> 
>          location / {
>              root   /home/$domen/$root/www/$sub;
>              index  index.html index.htm;
>          }
> 
> 
> 
> Ну и соответственно добавляете строчки в нужный файл
> В spisok.conf
> *.example.com  example.com;
> 
> В conf/conf_domen/example.com.conf;
> *.test1.example.com test1;
> 
> В conf/conf_subdomen/example.com.conf;
> www3.test1.example.com www3;
> 
> 
> В итоге получим
> $domen = example.com;
> $root = test1;
> $sub  = www3;
> 
> 
> Ну и путь получиться
> root   /home/example.com/test1/www/www3;
> 
> 
>> В апаче есть vhost-alias который может выкусывать указаную часть из 
>> $http_host и использовать как имя в директиве докрут
>>
>> Добрые люди сказали что в nginx этим может заниматся директива map
>> однако как её заставить это делать я так и непонял - и вообще 
>> сложилось ощущение что она вовсе не для этого.
>>
>> Смысл задачи таков есть *.somehost.zone
>> для всех * разные папки докрут остальное всё идентичное как правильно 
>> организовать такуюже схему как в апаче средствами nginx?
>>
>>
>>
> 
> 
> 
о очень даже неплохо придумано
можно даже формочку со скриптом сбацать чтоб добавлять/удалять хосты
скриптиком :)






More information about the nginx-ru mailing list