Отрерайтить поддомены в страницы

valet nginx-forum at nginx.us
Sun Nov 2 00:05:17 UTC 2014


Здравствуйте.

Для группы сайтов отрерайтить поддомены в страницы.

Есть группа сайтов вида:
sub1.site1.ru
sub2.site1.ru
subn.site1.ru
sub1.site2.ru
sub2.site2.ru
subn.site2.ru

Физически они лежат на сервере соотвественно в каталогах:
/var/www/sites/sub1.site1.ru
/var/www/sites/sub2.site1.ru
/var/www/sites/subn.site1.ru
/var/www/sites/sub1.site2.ru
/var/www/sites/sub2.site2.ru
/var/www/sites/subn.site2.ru

Так как сайтов такого рода много для них применяется общий конфиг вида:
server {
    listen  80;
server_name *.site1.ru, *.site2.ru;

....

if ( $host ~ ^(www\.)?(.+)$ ) {
     set $domain $2;
}

    location / {
        root    /var/www/sites/$domain;
        index index.html;
}

...

}
то есть с хоста вырезается домен, чтобы автоматически в одном конфиге
попадать в нужный каталог.

Задача такая:
заставить http-запрос вида http://stranica-1.sub1.site1.ru показывать файл
sub1.site1.ru/stranica-1.html, лежащий в соотвествующем каталоге +
html-расширение - то есть например:
http://page-345.sub2.site1.ru показывает файл
/var/www/sites/sub2.site1.ru/page-345.html
http://page-123.subn.site1.ru показывает файл
/var/www/sites/subn.site1.ru/page-123.html
http://page-456.sub2.site2.ru показывает файл
/var/www/sites/sub2.site2.ru/page-456.html

Помогите написать правильный реврайт - никак не могу сообразить как это
сделать все в одном конфиге для всех сайтов.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,254515,254515#msg-254515



Подробная информация о списке рассылки nginx-ru