За последние 24 часа нас посетили 17352 программиста и 1681 робот. Сейчас ищут 911 программистов ...

Субдомены - что делать?

Тема в разделе "Прочие вопросы по PHP", создана пользователем Tinvul, 13 мар 2009.

  1. Tinvul

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

    С нами с:
    13 мар 2009
    Сообщения:
    31
    Симпатии:
    0
    Адрес:
    Хабаровск
    Доброго времени суток.
    Возник вопрос. написал себе сайтик с собственной CMS. у меня есть модули, к которым я обращаюсь mysyte.ru/xxx/
    что надо сделать, чтоб данной папочки ххх присвоить отдельный домен?
    сайт пока на домашнем сервере
     
  2. alexey_baranov

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

    С нами с:
    3 фев 2009
    Сообщения:
    647
    Симпатии:
    0
    Адрес:
    Сургут
    Три вещи

    1. В апачевском httpd-vhosts.conf описать папочку как виртуальный хост (у меня папка diplom). заменить выделенные места на свои

    <VirtualHost *:80>
    # Папка, в которой будет корень вашего хоста.
    DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/diplom"
    # Домен по которому вы сможете обращаться к виртуальному хосту.
    ServerName www.diplom.ru
    # Алиас (добавочное имя) домена.
    ServerAlias diplom
    # Файл, в который будут записываться ошибки.
    ErrorLog "logs/diplom-error.log"
    # Файл журнала доступа к хосту.
    CustomLog "logs/diplom-access.log" common
    </VirtualHost>

    2. В файле C:\WINDOWS\system32\drivers\etc прописать

    127.0.0.1 www.diplom.ru
    127.0.0.1 diplom

    3. перезапустить апач
     
  3. Tinvul

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

    С нами с:
    13 мар 2009
    Сообщения:
    31
    Симпатии:
    0
    Адрес:
    Хабаровск
    alexey_baranov
    спасибо....
    а каким образом мне сделать неограниченое число дополнительных доменов 2 и 3 уровня?
    непонимаю как это сделать если я один раз уже задам параметр DocumentRoot в блоке <VirtualHost></VirtualHost>...
    можно пожалуйса обьяснить?
     
  4. alexey_baranov

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

    С нами с:
    3 фев 2009
    Сообщения:
    647
    Симпатии:
    0
    Адрес:
    Сургут
    дело в том, что количество блоков <VirtualHost></VirtualHost> неограничено. на каждую папки которую хочешь сделать отдельным доменом пишется один новый блок <VirtualHost></VirtualHost>. вот пример моего файла на работе. Причем учти порядок этих блоков. если ни один из блоков не перехватывает запрос, то будет использован первый по порядку блок.
    Код (Text):
    1.  
    2. #
    3. # Virtual Hosts
    4. #
    5. # If you want to maintain multiple domains/hostnames on your
    6. # machine you can setup VirtualHost containers for them. Most configurations
    7. # use only name-based virtual hosts so the server doesn't need to worry about
    8. # IP addresses. This is indicated by the asterisks in the directives below.
    9. #
    10. # Please see the documentation at
    11. # <URL:http://httpd.apache.org/docs/2.2/vhosts/>
    12. # for further details before you try to setup virtual hosts.
    13. #
    14. # You may use the command line option '-S' to verify your virtual host
    15. # configuration.
    16.  
    17. #
    18. # Use name-based virtual hosting.
    19. #
    20. NameVirtualHost *:80
    21.  
    22. #
    23. # VirtualHost example:
    24. # Almost any Apache directive may go into a VirtualHost container.
    25. # The first VirtualHost section is used for all requests that do not
    26. # match a ServerName or ServerAlias in any <VirtualHost> block.
    27. #
    28.  
    29. <VirtualHost *:80>
    30.     ServerAdmin webmaster@dummy-host.example.com
    31.     DocumentRoot "d:/BitNami WAPPStack/apache2/htdocs"
    32.     ServerName dummy-host.example.com
    33.     ServerAlias www.dummy-host.example.com
    34.     ErrorLog "logs/error.log"
    35.     CustomLog "logs/access.log" common
    36. </VirtualHost>
    37.  
    38. <VirtualHost *:80>
    39.    # Папка, в которой будет корень вашего хоста.
    40.    DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/tor"
    41.    # Домен по которому вы сможете обращаться к виртуальному хосту.
    42.    ServerName www.tor.ru
    43.    # Алиас (добавочное имя) домена.
    44.    ServerAlias tor
    45.    # Файл, в который будут записываться ошибки.
    46.    ErrorLog "logs/tor-error.log"
    47.    # Файл журнала доступа к хосту.
    48.    CustomLog "logs/tor-access.log" common
    49. </VirtualHost>
    50. <VirtualHost *:80>
    51.    # Папка, в которой будет корень вашего хоста.
    52.    DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/diplom"
    53.    # Домен по которому вы сможете обращаться к виртуальному хосту.
    54.    ServerName www.diplom.ru
    55.    # Алиас (добавочное имя) домена.
    56.    ServerAlias diplom
    57.    # Файл, в который будут записываться ошибки.
    58.    ErrorLog "logs/diplom-error.log"
    59.    # Файл журнала доступа к хосту.
    60.    CustomLog "logs/diplom-access.log" common
    61. </VirtualHost>
    62. <VirtualHost *:80>
    63.    # Папка, в которой будет корень вашего хоста.
    64.    DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/mvc"
    65.    # Домен по которому вы сможете обращаться к виртуальному хосту.
    66.    ServerName www.mvc.ru
    67.    # Алиас (добавочное имя) домена.
    68.    ServerAlias mvc
    69.    # Файл, в который будут записываться ошибки.
    70.    ErrorLog "logs/mvc-error.log"
    71.    # Файл журнала доступа к хосту.
    72.    CustomLog "logs/mvc-access.log" common
    73. </VirtualHost>
     
  5. Tinvul

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

    С нами с:
    13 мар 2009
    Сообщения:
    31
    Симпатии:
    0
    Адрес:
    Хабаровск
    alexey_baranov
    Понил))) получается при этом я смогу обращаться к скриптам которые на уровень выше стоят (корневом каталоге) в формате ../../index.php ??? или мне придется уже указывать ссылку вместе с доменом?
     
  6. alexey_baranov

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

    С нами с:
    3 фев 2009
    Сообщения:
    647
    Симпатии:
    0
    Адрес:
    Сургут
    понятия не имею. у тебя в голове картина, что эти папки- части одного большого целого, но если я не ошибаюсь, с точки зрения апача такие папки смотрятся как совершенно независимые, никак не связные домены. это было придумано для того, чтобы на одном веб сервере запускать по 50 независимых проектов. А отсюда следует, что когда ты делаешь ../../index.php, ты стучишься на совсем другой домен. логично предположить что относительные ссылки тут не прокатят. хотя это надо пробовать. напиши что получилось. апач- это не моя сильная сторона. я больше по программированию.
     
  7. alexey_baranov

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

    С нами с:
    3 фев 2009
    Сообщения:
    647
    Симпатии:
    0
    Адрес:
    Сургут
    в принципе у меня то такая же ситуация. только я про это никогда не задумывался. есть несколько интерфейсов , которые хранятся в папках
    i/br - это движек
    i/zaya - это наш рабочий интерфейс
    i/zak - это интерфейс заказчика
    i/disp - это совсем урезанный для диспетчеров
    и т.д.

    внутри интерфейса все работает ровно, относительные ссылки рулят.а если мне с одного интерфейса надо отослать в другой, то приходится директить так tor.id.tr.ru/i/disp/view.php или tor.id.tr.ru/i/zaya/edit.php и т.д. если то что ты пробуешь прокатит, можно будет лихо упростить все ссылки.