Как содать виртуальные хосты.

Как содать виртуальные хосты.

По умолчанию в сервере Apache можно создать один сайт, это localhost, но на то они и умолчания чтобы их изменять.

Виртуальные хосты позволяют размещать на сервере не один, а два и более сайтов одновременно. Виртуальные хосты как и localhoct создаются в одном каталоге, т.е. как в моем примере в папке "scripty", например ваш реальный сайт в интернете site.ru, значит чтобы этот сайт запускать локально вам нужно создать папку site.ru в папке "scripty", а в папке "site.ru" создать папку www, последняя и будет корнем сайта в который вы бутете сохранять свои сценарии или просто статические файлы. Для доменов третьего уровня(пример site.org.ua) вы в папке "scripty" создаете org.ua, а в последней создаете папку site которая будет выполнять ту же роль что и www для доменов второго уровня.

Перейдем к практике, т.е. как настроить виртуальные хосты. Это делается в два приема.

1)Настройки вносятся в файл конфигурации сервера Apache, т.е. httpd.conf, но чтобы его не испортить нужно создать рядом новый файл virtyal.conf, данный файл создается текстовым редактором.
Откройте файл httpd.conf и в самом низу добавте следующую строчку:
include virtyal.conf
Тем самым прикрепим virtyal.conf к httpd.conf.
Откроем virtyal.conf и вставим следующие настройки:
NameVirtualHost 127.0.0.1
Listen 127.0.0.1:80
#Localhost
<VirtualHost *:*>
ServerAdmin admin@localhost
ServerName localhost
DocumentRoot "Z:/scripty/localhost"
</VirtualHost >
#site.ru
<VirtualHost site.ru>
ServerAdmin admin@site.ru
ServerName site.ru
DocumentRoot "Z:/scripty/site.ru/www"
</VirtualHost >
#site.org.ua
<VirtualHost site.org.ua>
ServerAdmin admin@site.org.ua
ServerName site.org.ua
DocumentRoot "Z:/scripty/org.ua/site"
</VirtualHost >
В первой строке мы указали что все сайты на I.P. 127.0.0.1 и порт "80" т.е. 127.0.0.1:80. Далее мы превратили главный ХОСТ в виртуальный, потому что если создаются виртуальные хосты то главный не доступен. При помощи ServerAdmin указали адреса эл.почты для связи с администрацией хоста. При помощи ServerName указали имена виртуальных хостов. При помощи DocumentRoot указали корневые папки сайтов.

2)Теперь перейдем в папку:
C:\Windows\System32\drivers\etc и откроем текстовым редактором файл hosts и добавим следующие строки:
127.0.0.1 localhost
127.0.0.1 site.ru
127.0.0.1 site.org.ua

Первым шагом мы настроили сервер, а вторым компьютер для того чтобы браузеры знали по какому адресу находится данный сайт.
Вообще не рекомендуется создавать точные названия своих сайтов локально, потому что если локальный сервер запущен то вы не увидите своего сайта в интернете, хотя если и остановлен тоже из-за записей в файле hosts, потому лучше изменять хоть одну букву в имени сайта или не используйте суфиксы ru, com, ua и т.д., при этом при написании сайта локально используйте только относительные пути.
P.S. Но а если у вас не получилось создать виртуальные хосты то не расстраивайтесь, а просто скачайте "денвер", он всю рутину сделает за вас, т.е. виртуальные хосты в файлах hosts и virtyal.conf!!!