1.5Настройка виртуального сервера (VirtualHost)
Виртуальные сервера удобны как для создания и отладки сайтов на локальном web-сервере, так и для создания нескольких сайтов на одном web-сервере. Во-первых, очень легко добавлять новые виртуальные серверы, во-вторых, все настройки, относящиеся к данному серверу, находятся в одном месте, а в-третьих, очень просто организовать одновременную поддержку нескольких проектов.
Как уже было сказано выше, директивы, определенные в секции виртуального хоста, переопределяют глобальные значения. Но для начала нужно разобраться, каким образом определить сам виртуальный хост. Это делается при помощи одноименной директивы VirtualHost. Ниже приведен фрагмент, описывающий виртуальный сервер для нашего проекта. Добавьте его в самый конец конфигурационного файла - именно там находится секция для определения виртуальных хостов:
<VirtualHost 127.0.0.2>
ServerAdmin yourmail@mydomain.ru
ServerName mydomain.ru
ServerAlias www.mydomain.ru
DocumentRoot "/web/project/website"
ScriptAlias /cgi-bin/ "/web/project/cgi-bin/"
ErrorLog /web/project/logs/error.log
CustomLog /web/project/logs/access.log common
</VirtualHost>
Итак, в первой строчке определен IP-адрес, по которому будет осуществляться доступ к виртуальному хосту.
Во второй, третьей и четвертой строчках переопределены e-mail администратора, имя сервера и алиас имени сервера. Эти директивы указывать не обязательно, но они позволяют более удобно организовать работу с web-сервером, в частности, сделать так, чтобы обращаться к серверу можно было не по IP-адресу, а по определенному в этой секции имени хоста.
Далее следует важная строчка, определяющая местоположения документов для нашего сайта. Формат записи полностью аналогичен базовому серверу. Точно так же переопределены алиасы к CGI-скриптам и пути к лог-файлам. После добавления виртуального хоста Apache необходимо перезапустить - чтобы изменения вступили в силу. Наш виртуальный хост теперь будет доступен по адресу 127.0.0.2. Если что-то не получается и сервер отказывается запускаться, то посмотрите, что написано в файле error.log. Скорее всего, там будет указано на ошибку в синтаксисе конфигурационного файла.
Задание
Настроить web-сервер Apache для доступа по порту 8081 на домен localhost.
Перенести сверстанную страницу в папку хоста localhost и добиться корректного отображения страницы за счет изменения путей к файлам скриптов, изображений, и т.д.
Настроить переадресацию на несуществующую страницу (ошибка 404).
Настроить виртуальный хост praktika.ru.
Ответить на вопросы:
Что такое веб-сервер?
С помощью чего можно настроить Apache?
Что такое виртуальный хост?
Что такое порт?
Какова структура каталогов Denwer?
Чем отличается Denwer от Apache?
1 Хост (от англ. host — хозяин, принимающий гостей) – любое устройство, предоставляющее сервисы формата «клиент-сервер» в режиме сервера по каким-либо интерфейсам и уникально определённое на этих интерфейсах. В более частном случае под хостом могут понимать любой компьютер, сервер, подключённый к локальной или глобальной сети.
2 В протоколах TCP и UDP (семейства TCP/IP) порт — идентифицируемый номером системный ресурс, выделяемый приложению, выполняемому на некотором сетевом хосте, для связи с приложениями, выполняемыми на других сетевых хостах (а также c другими приложениями на этом же хосте).
