Однажды мне потребовалась возможность создавать "бесконечные" поддомены на сайте, точнее, чтобы каждый пользователь мог создавать себе неограниченное количество поддоменов, то есть по сути, это лишь выглядит как поддомен, он элементарно записывается в БД, потом же, при обращении к этому поддомену, пользователю выводится требуемая информация. Все это дело было сделано на хостинге, соответственно я просто попросил, мне настроили такую возможность для определенного домена.
Сейчас же, пытаюсь сделать тоже самое, только на VDS.
Что я уже сделал? Настроил LAMP, создал пару папок для двух разных сайтов, привязал домены (site1.ru и site2.ru). Добавил на каждый из них по файлу index.php, первый содержит вывод текста, говорящий о том, что это site1.ru, второй, то, что это site2.ru. Вот что интересно, когда я пытаюсь пройти по ссылке с субдоменом на первом сайте (sub.site1.ru) - все в порядке, он, как и должен, выводит: "SITE1.RU", а вот когда прохожу по второму сайту с поддоменом (sub.site2.ru) он тоже выводит SITE1.RU, при этом, проходя без поддомена (sub.site2.ru) он выводит: "SITE2.RU". Вот я и пришел к выводу, что тут надо что-то настраивать, хотелось бы только узнать, что именно, ладно бы оба сайта не работали, так один же работает :)
Спасибо большое! Уже начал читать про установку DNS, не знаю, надо ли оно мне? Интересно, почему один сайт работал, а второй нет? А на nginx примерно так же настраивается?
hrvasiliy: директивы VirtualHost обрабатываются «по мере поступления». Когда сервер обошёл все директивы и не нашёл, какая из них слушает sub1.site2.ru, вернулся к первой, у которой ServerName не указан. Скорее всего, site1.ru таким и был.
hrvasiliy: да, довольно похоже. Только там директива под доменные имена называется server_name. Так же для каждого домена второго уровня пропишите *.example.com и отлавливайте заголовок Host в скрипте.