PHP « домен третьего уровня
Доброго времени суток.
Возникла такая проблема. Есть 3 разных сайта. Они должны лежать в одной папке на хостинге. Но все должно работать так, что бы при вызове доменов третьего уровня вызывался нужный сайт. Например:
Домен - domain .
Сайт 1 - site1.domain.ru
Сайт 2 - site2.domain.ru
Сайт 3 - site3.domain.ru
Не подскажите как это реализовать? буду благодарен.
Возникла такая проблема. Есть 3 разных сайта. Они должны лежать в одной папке на хостинге. Но все должно работать так, что бы при вызове доменов третьего уровня вызывался нужный сайт. Например:
Домен - domain .
Сайт 1 - site1.domain.ru
Сайт 2 - site2.domain.ru
Сайт 3 - site3.domain.ru
Не подскажите как это реализовать? буду благодарен.
1 ответов
Т.к. у вас веб-сервер апач, то вам нужно ознакомиться с Virtualhost Apache
В итоге должно быть примерно так:
<VirtualHost *:80>
DocumentRoot /www/site1
ServerName www.site1.domain.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/site2
ServerName www.site2.domain.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/site3
ServerName www.site3.domain.com
</VirtualHost>
По тегам понимаю, что вопрос скорее в php, да?
Т.е. как в ваших скриптах распознать сайт?
Схематично так:
switch ($_SERVER['SERVER_NAME'])
{
case 'site1.domain.ru':
echo "site1.domain.ru";
break;
case 'site2.domain.ru':
echo "site2.domain.ru";
break;
case 'site3.domain.ru':
echo "site3.domain.ru";
break;
default:
echo "No site";
}
Ну, а в VirtualHost апача:
<VirtualHost *:80>
DocumentRoot /www/
ServerName site1.domain.ru
ServerAlias site2.domain.ru, site2.domain.ru
</VirtualHost>