Поддомены подстановочных знаков 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"

0 ответов

Другие вопросы по тегам