воскресенье, 15 января 2012 г.

Настройка виртуальных хостов Apache2 под Ubuntu 10.04 Server. Часть 1, виртуальные хосты

Доброго всем утра, дня или вечера!
В данном посте я хочу рассказать, как настраивать виртуальные хосты Apache2 под Ubuntu 10.04 Server. Данная тема не один и не два раза освещается на просторах Интернета. Поэтому, я решил ещё и наглядно показать в рамках простой локальной сети, как это работает.

Софт, я использовал для настройки и проверки: 
  1. VirtualBox 4.1.8 - для эмуляции локальной сети;
  2. Ubuntu 10.04 Server - веб-сервер;
  3. Windows XP - клиентская машина.
Пропускаю установку систем под VirtualBox, поскольку это отдельная тема для разговора, однако замечу, что при установке сервера выбрана минимальная конфигурация: LAMP+OpenSSH.
Запускаем машину:

Поскольку при установке системы также был установлен LAMP, то веб-сервер я уже имею, значит его осталось только настроить. По-умолчанию, файлы сайта Apache хранятся в /var/www/. Для создания виртуального хоста нужно выделить под него соответствующую директорию. Для простоты я буду называть директорию хоста по его имени. Вот последовательность команд для создания папки для хоста (из под рута):
  1. /etc/init.d/apache2 stop;
  2. cd /var/www
  3. mkdir /var/www/localhost
  4. mkdir /var/www/test.htcs.ru
  5. Опциально: chmod -R 755 /var/www/<папка хоста>
  6. Опциально: mkdir /var/log/apache2/hosts - для хранения логов.
После того, как созданы папки, нужно отредактировать конфигурационные файлы:
  1. cd /etc/apache2/sites-available;
  2. nano default;
  3. Сразу после директивы ServerAdmin добавляем две такие: ServerName localhost; ServerAlias localhost.
  4. Заменяем /var/www(/) на /var/www/localhost(/);
  5. Заменяем /var/log/apache2/access.log на /var/log/apache2/hosts/localhost-access.log;
  6. Заменяем /var/log/apache2/error.log на /var/log/apache2/hosts/localhost-error.log.
Таким образом я создал виртуальный хост для localhost. Теперь я создам отдельный виртуальный хост test.htcs.ru:
  1. cd /etc/apache2/sites-available;
  2. cp default test.htcs.ru;
  3. nano test.htcs.ru;
  4. Заменяем везде localhost на test.htcs.ru, а именно в тех строчках, где произошла замена в предыдущем шаге.
После этого нужно "включить" виртуальные хосты. Это делается командой: a2ensite test.htcs.ru. Подробнее о настройке виртуальных хостов смотрите по ссылке: http://myubuntu.ru/faq/nastrojka-virtualnyx-xostov-v-ubuntu.
Далее необходимо сделать так, чтобы сервер знал, что его могут вызывать ещё и по имени test.htcs.ru:
  1. Опциально: cd $HOME;
  2. nano /etc/hosts;
  3. Добавляем строчку: 127.0.0.1 test.htcs.ru в конец списка похожих записей.
  4. /etc/init.d/apache2 reload.
Настройка виртуальных хостов завершена+)
Следующая часть о тестировании виртуальных хостов в локальной сети  будет написана в скором времени.

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

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