Поддомены подстановочных знаков nginx для разных корней
Я хочу поддерживать все домены уровня "domain.com" для моей конфигурации. Это возможно с:
server_name "~^(?<sub>.+)\.domain\.com$";
Мой корень выглядит так:
set $subDirectory subdomains/$sub/;
set $root /var/www/domain.com/$subDirectory/www/;
root $root;
Пример:
"abc.domain.com" будет /var/www/domain.com/subdomains/abc/www/
Теперь я хочу поддерживать субдомены всех уровней. Для каждого подпрограммы я хочу установить в корень между доменом. Com / ЗДЕСЬ / www / subdomains / $sub /. Как мне это сделать?
"abc.domain.com" будет /var/www/domain.com/subdomains/abc/www/
"test.abc.domain.com" должен быть /var/www/domain.com/subdomains/abc/subdomains/test/www/
"hello.test.abc.domain.com" должен быть /var/www/domain.com/subdomains/abc/subdomains/test/subdomains/hello/www/
В настоящее время "$sub" для последнего примера hello.test.abc;.
Могу ли я скопировать "$sub" в "$subRoot" и заменить все точки (.) На $subRoot на "/subdomains/"? $subRoot выглядит тогда как "hello / subdomains / test / subdomains / abc"