Настройка виртуального хоста в WAMP

Создание виртуальных хостов, это хороший способ расположения нескольких доменов на одном IP. Это позволяет нескольким сайтам пользоваться общими параметрами системы (оперативной памятью и т.д.); Такая технология часто используется компаниями, предоставляемые виртуальный хостинг.
Разработчики обычно помещают свои сайты в папки www или htdocs. Для того чтобы использовать абсолютные пути (ссылки) в своих web-приложениях некоторые разработчики меняют содержание файла httpd.conf, а именно настраивая путь текущего проекта как root (корневой). После этого их проект доступен по адресу http://localhost/
Но это не очень хороший способ т.к. при новом проекте придётся снова менять путь и так далее.
Для решения этой задачи, мы можем использовать виртуальные хосты. Поскольку я использую WAMP, то покажу как это сделать используя данную систему, но для других сборок этот процесс не должен сильно отличаться.
В первую очередь давайте отредактируем файл hosts, который находится по адресу C:\Windows\system32\drivers\etc\hosts. Вставьте следующую строку в конец файла:
127.0.0.1 mydomain.home |
Эта строка фактически сообщает системе использовать адрес 127.0.0.1 для домена mydomain.home. Сохраните и закройте файл.
Далее нам надо изменить файлы httpd.conf и httpd-vhosts.conf. Для изменения первого файла зайдите в корневой каталог вашего Apache. В моём случае это C:\wamp\bin\apache\apache2.2.11\conf. Откройте файл httpd.conf и найдите строчку
#Include conf/extra/httpd-vhosts.conf |
Раскомментируйте её (убрав знак #). Сохраните файл и закройте его. Теперь откройте каталог extra. В моём случае это C:\wamp\bin\apache\apache2.2.11\conf\extra. Теперь откройте файл httpd-vhosts.conf и добавьте следующий код в конец:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot "c:/wamp/www" ServerName localhost ErrorLog "logs/localhost-error.log" CustomLog "logs/localhost-access.log" common </VirtualHost> <VirtualHost *:80> DocumentRoot "c:/wamp/www/your-local-folder" ServerName mydomain.home <directory "c:/wamp/www/your-local-folder"> Options Indexes FollowSymLinks AllowOverride all Order Deny,Allow Deny from all Allow from 127.0.0.1 </directory> </VirtualHost> |
Для того чтобы использовать виртуальные хосты надо выполнить два условия. Первое настроить хост для localhost для того, чтобы не потерять возможность обращаться к сайтам http://localhost/site; Второе условие, сообщить Apache где ему искать документы для домена mydomain.home. Все остальные строки нужны для того, чтобы иметь возможность пользоваться файлом .htaccess
Перезапустите Apache.
Теперь вы можете обращаться к вашему рабочему проекту по адресу http://mydomain.home.
Для того чтобы добавить ещё один виртуальный хост, вам необходимо проделать все перечисленные шаги.