Nginx, эквивалентный lighttpd “evhost.path-шаблону”

Я настраиваю новый сервер для своего персонального материала. На старом поле я использовал lighttpd в течение почти двух лет теперь. Я читал немного об этом, и большинство людей склонно переключаться на nginx, так как это - разработка, намного более активно.

Теперь я немного поражен силой nginx. Самой прохладной вещью, которую я использовал с lighty, была функция "evhost.path-шаблона", где я могу просто делегировать все домены и субдомены с помощью более или менее сложного регулярного выражения и определив "evhost.path-шаблон = "/var/www/pages/%0/subdomains / % 3 /" таким образом, я просто должен создать новую папку в "субдоменах" и та же секунда, у меня есть работа webdir для загрузки материала для нового субдомена (или нового домена).

Nginx имеет эту конструкцию:

server {
    server_name   ~^(www\.)?(?<domain>.+)$;

    location / {
        root   /sites/$domain;
    }
}

Но теперь у меня есть проблемы, находя, что надлежащий RegEx покрывает домены и субдомены одновременно (в lighty, который я сделал, это при наличии RegEx, чтобы иметь ловит домен и инвертирует его для субдоменов). Я хочу, чтобы основной домен (с и без 'www') перешел к/var/www/pages//htdocs/, и все субдомены должны перейти к/var/www/pages//субдомены//.

Какая-либо справка на этом?

1
задан 12 March 2012 в 18:08
1 ответ

преобразовать из комментария в CW

Теперь у меня есть две директивы server {} .

Один для основных доменов (с www и без него) и один для поддоменов, каждый с подходящим регулярным выражением для получения имени домена и поддомена.

1
ответ дан 4 December 2019 в 01:11

Теги

Похожие вопросы