Как сделать все диры Сабдоменами?

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем unix4k, 9 янв 2009.

Статус темы:
Закрыта.
  1. unix4k

    unix4k Создатель

    Регистр.:
    2 окт 2008
    Сообщения:
    48
    Симпатии:
    2
    Где это прописывается?
    Хочу сразу залить 100 диров и сделать из них сабы! а то в админке долго по одному делать а потом расфасовывать всё.

    Подскажите плиз!
    :bc:
     
  2. g00dwin

    g00dwin

    Регистр.:
    9 ноя 2006
    Сообщения:
    164
    Симпатии:
    68
    Довольно простой метод через mod_rewrite.
    1. В настройках NS нужно добавить имя * в A запись
    PS: после записи * никакие сабдомены обрабатываться не будут, и если вы хотите редиректить какие-то сабдомены на другие ИП, пропишите их первыми.

    domen.com. IN A 11.11.11.11
    www IN A 11.11.11.11
    ftp IN A 22.11.11.11
    mail IN A 33.11.11.11
    * IN A 11.11.11.11

    2. Добавляем .htaccess файл

    # берем сабдомен

    RewriteCond %{HTTP_HOST} ^([^\.]+)\.domain\.com$ [NC]
    # проверяем что сабдомен небыл www, ftp, mail
    RewriteCond %1 !^(www|ftp|mail)$ [NC]
    # редиректим все php скрипту, который решает что делать с сабдоменом.
    RewriteRule ^.*$ http://www.domain.com/%1 [R,L]
     
  3. unix4k

    unix4k Создатель

    Регистр.:
    2 окт 2008
    Сообщения:
    48
    Симпатии:
    2
    чесно говоря ничего непонял что и почему так! :) Может по подробней скажите что делает что из тех команд! а то я как в лесу ночью.
     
  4. g00dwin

    g00dwin

    Регистр.:
    9 ноя 2006
    Сообщения:
    164
    Симпатии:
    68
    Вообще то для начала, чтобы это можно было реализовать, желательно доступ к файлам ДНС. Практически на всех шаред-хостингах, и на некоторых ВДС это невозможно. Панели управления, как правило не дают завести так называемые wildcard dns, ругаются на ошибку. Если это доступно - скорее это исключение из правил. А попросту говоря, нужен дедик или VDS/VPS с root доступом. Если нет - обычно сразу в сад.

    Если есть - сначала правим зону ДНС

    domen.com. IN A 11.11.11.11
    www IN A 11.11.11.11
    ftp IN A 22.11.11.11
    mail IN A 33.11.11.11
    * IN A 11.11.11.11

    Здесь - domen.com - наш домен, 11.11.11.11 - IP нашего домена. Сначала заводим стандартные записи www, ftp, mail ну и еще какие там нам еще если нужно. После этого пишем запись со звездочкой - звучит как *.domen.com лежит на IP 11.11.11.11.

    После этого отдаем управленире сабами апачу через .htaccess. Здесь и так все достаточно откомментировано.

    # берем сабдомен
    RewriteCond %{HTTP_HOST} ^([^\.]+)\.domain\.com$ [NC]
    # проверяем что сабдомен небыл www, ftp, mail
    RewriteCond %1 !^(www|ftp|mail)$ [NC]
    # редиректим все php скрипту, который решает что делать с сабдоменом.
    RewriteRule ^.*$ http://www.domain.com/%1 [R,L]


    Если же до сих пор непонятно, то гуглим на запрос wildcard dns, а так же читаем доки по DNS, apache и mod_rewrite.
     
  5. Jacob

    Jacob

    Регистр.:
    18 окт 2006
    Сообщения:
    257
    Симпатии:
    18
    вопрос к ясновидящим :D
    в общем случае надо направить все сабы на один айпи и настроить вебсервер.
     
Статус темы:
Закрыта.