Tetrakronos
@Tetrakronos
Спортсмен

Как в nginx динамически делать поддомены?

Здравствуйте!
Никак не получается сделать динамически создаваемые поддомены для сайта. То есть если пользователь обратиться по ссылке вида: sub1.test.ru nginx должен смотреть в директорию F:\Server\OSPanel\domains\localhost\sub1, если пользователь обратится по ссылке вида othersitename.test.ru nginx должен смотреть в директорию F:\Server\OSPanel\domains\localhost\othersitename
Пробовал так:
server {
    server_name ~^(www\.)?(?<domain>.+)$;

    location / {
        root F:\Server\OSPanel\domains\localhost\$domain;
    }
}

не пошло.
  • Вопрос задан
  • 60 просмотров
Пригласить эксперта
Ответы на вопрос 2
@dodo512
^(www\.)?(?<domain>.+)$

Тут в переменную $domain захватит всю строку sub1.test.ru

^(?:www\.|)(?<domain>.+)\.test\.ru$
С таким шаблоном в $domain попадает только нужная часть sub1

Замена (?:www\.|) на (?>www\.|) исключит совпадение с www.test.ru
Ответ написан
Комментировать
@Enj0y
Назовите просто папки как названия доменов, и не будет лишней логики
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы