Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Аналог vhost_alias - map?
Вроде можно реврайтом разбирать $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?
|