Я настраиваю новый сервер для своих личных вещей. На старом ящике уже почти два года использую lighttpd. Я немного читал об этом, и большинство людей склонны переключаться на nginx, поскольку его разработка идет гораздо активнее.
Теперь я немного поражен мощью nginx. Самая крутая вещь, которую я использовал с lighty, - это функция «evhost.path-pattern», где я могу просто делегировать все домены и поддомены, используя более или менее сложное регулярное выражение и определяя «evhost.path-pattern =» / var / www / pages /% 0 / subdomains /% 3 / ", поэтому мне просто нужно создать новую папку в" subdomains ", и в ту же секунду у меня есть рабочий веб-каталог для загрузки материалов для нового субдомена (или нового домена).
У Nginx есть такая конструкция:
server {
server_name ~^(www\.)?(?<domain>.+)$;
location / {
root /sites/$domain;
}
}
Но теперь у меня проблемы с поиском правильного RegEx для одновременного охвата доменов и поддоменов (я сделал это, имея RegEx, чтобы перехватить домен и отрицать его для поддоменов). Я хочу, чтобы основной домен (с www и без него) находился в / var / www / pages // htdocs /, а все поддомены должны переходить в / var / www / pages // subdomains //.
Любая помощь по этому поводу?
конвертировать из комментарий на CW
У меня сейчас два server{}
директива.
Один для основных доменов (с www и без него) и один для поддоменов, каждый с подходящим регулярным выражением для получения имени домена и поддомена.