За последние 24 часа нас посетили 16922 программиста и 2175 роботов. Сейчас ищут 879 программистов ...

Создание динамических субдоменов

Тема в разделе "PHP для новичков", создана пользователем gkhelloworld, 20 авг 2010.

  1. gkhelloworld

    gkhelloworld Активный пользователь

    С нами с:
    18 ноя 2007
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    PHP.ru
    После прочтения некоторой информации я пришел к выводу, что для реализации нужное след. шаги:

    1. Добавить DNS *.site.com как A
    2. Прописать в vhost
    Код (Text):
    1.  
    2.    ServerName site.com
    3.    ....
    4.    ServerAlias *.site.com
    А дальше мне не понятно как реализовать с mod_rewrite
    Есть адрес http://site.com/index.php?mod=user - этот адрес содержит страницу которую нужно передать в ввиде
    http://user.site.com/
     
  2. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Бери $_SERVER['SERVER_NAME'], если он не равен site.com, то вырезай слово ".site.com" - получишь идентификатор. Потом $_GET['mod'] = идентификатор.

    Рузкльтат user.site.com -> user -> $_GET['mod'] = 'user'.

    Тут не нужен mod_rewrite.
     
  3. gkhelloworld

    gkhelloworld Активный пользователь

    С нами с:
    18 ноя 2007
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    PHP.ru
    хм.. у меня на любой странице *.site.com ошибка 404 кроме www.site.com и site.com
    я знаю как получить имя их хоста и т.п., я не знаю как отобразить страницу вида: user.site.com которая расположена по адресу site.com/index.php?mod=user
     
  4. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Ошибка точно 404 ("не найдена страница", а не "не найден сервер/хост")? Тогда это хороший знак. Значит A-запись прошла и апач перезагружен. :) Ковырни свой скрипт. Вероятно, он отдаёт 404-ую.
     
  5. gkhelloworld

    gkhelloworld Активный пользователь

    С нами с:
    18 ноя 2007
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    PHP.ru
    Код (Text):
    1. Not Found
    2.  
    3. The requested URL / was not found on this server.
    если обращаться к любой странице вида *.site.com
    Я так полагаю при успешной настройке если запросить любой субдомен вида test.site.com я виже site.com и отсюда нужно плясать что на странице отображать... Но вот в том, то и дело апач выдает Not Found

    Старнно, то, что если в папке там где у меня сайт прописать любую папку например

    var/data/www/site.com/test/
    то я попаду на адрес test.site.com


    UPD все я разобрался в этом и была проблема субдомены были привязаны к папкам