среда, 11 сентября 2013 г.

Добавление виртуальных хостов в Apache

Добавление виртуальных хостов в ApacheПо умолчанию после установки Apache создается виртуальный хост с именемlocalhost. Я расскажу как добавлять новые виртуальные хосты в Apache.
Я создам виртуальный хост с именем myhost (вместо myhost вы можете выбрать любое имя, которое вам захочется).
Сначала нужно создать каталог, в котором будут находиться файлы будущего сайта. Создайте в своем домашнем каталоге директорию myhost. Чтобы это сделать можно выполнить команду:
mkdir ~/myhost
Директорию можно создавать где угодно, я для простоты создал ее в корне своей домашней директории yuriy.

Создаем конфигурационный файл хоста

В каталоге /etc/apache2/sites-available хранятся конфигурационные файлы виртуальных хостов Apache. По умолчанию там хранится файл default, который соответствует хосту localhost. Мы возьмем за основу файлdefault и скопируем его в файл с именем myhost. Для этого выполните следующие команды:
cd /etc/apache2/sites-available
sudo cp default myhost
Теперь отредактируем файл myhost. Откройте его в редакторе (например, в редакторе Gedit), выполнив команду:
sudo gedit myhost
Внесите в файл соответствующие изменения. В частности пропишите путь до директории, в которой будут храниться файлы хоста. В нашем случае это путь /home/yuriy/myhost, где yuriy вы должны заменить на название вашей домашней директории. Путь нужно прописать в двух местах: у параметра DocumentRoot и в заголовке секции<Directory /home/yuriy/myhost>. В самом начале файла (на второй строке) обязательно пропишите строку «ServerName myhost». Вот пример того, как должен выглядеть ваш файл myhost:
<VirtualHost *:80>
    ServerName myhost
    ServerAdmin webmaster@localhost

    DocumentRoot /home/yuriy/myhost
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/yuriy/myhost>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    LogLevel debug

    CustomLog /var/log/apache2/access.log combined
</VirtualHost>
Теперь нам нужно сделать наш хост активным. Apache использует каталог /etc/apache2/sites-enabled для определения хостов, которые нужно включить. Создадим символьную ссылку в каталоге sites-enabled, указывающую на наш файл myhost. Для этого выполните команды:
cd ../sites-enabled
sudo ln -s ../sites-available/myhost myhost

Перезапускаем Apache

Перезапустите Apache, выполнив команду:
sudo /etc/init.d/apache2 restart

Редактируем /etc/hosts

Осталось отредактировать файл /etc/hosts. В нем прописывается соответствие IP адреса имени хоста. То есть это своего рода локальный DNS. Чтобы открыть файл, выполните следующую команду:
sudo gedit /etc/hosts
В файле после адреса 127.0.0.1 допишите название своего виртуального хоста. В моем случае это myhost.
127.0.0.1 localhost myhost

Заключение

На этом настройка виртуального хоста Apache с именем myhost закончена. Теперь к нему можно обратиться в браузере, набрав адрес http://myhost.

Комментариев нет:

Отправить комментарий