Простой Виртуальный Хостинг

Модуль: mod_simple_vhost

Автор: Jan Kneschke
Дата: 2004-08-29
Версия: 1.1

Суть

Виртуальный хостинг

Содержание

Описание

Простое присвоение:

В указанной директории хостинга имя каждого каталога соответствует аналогичному имени вируального хоста. Внутри каждого такого каталога находится dccroot вируального хоста.

Docroot для каждого вируального хоста строится из следующих трёх значений:

Абсолютный путь к docroot'у строится из:

server-root + hostname + document-root

в случае если путь не существует

server-root + default-host + document-root

Небольшой пример должен дать всё понять:

/var/www/
/var/www/logs/
/var/www/servers/
/var/www/servers/www.example.org/
/var/www/servers/www.example.org/lib/
/var/www/servers/www.example.org/pages/
/var/www/servers/mail.example.org/
/var/www/servers/mail.example.org/lib/
/var/www/servers/mail.example.org/pages/

simple-vhost.server-root = "/var/www/servers/"
simple-vhost.default-host = "www.example.org"
simple-vhost.document-root = "pages"

Вы можете использовать символьные ссылки чтобы соотнести несколько имён хостов одной директории.

Условия vs. виртуальный хостинг

Вы должны знать об использовании условий с виртуальным хостингом.

simple-vhost.server-root = "/var/www/servers/"
simple-vhost.default-host = "www.example.org"
simple-vhost.document-root = "pages"

$HTTP["host"] == "news.example.org" {
  server.document-root = "/var/www/servers/news2.example.org/pages/"
} 

Даже если server.document-root установлен в /var/www/servers/news2.example.org/pages/ если news.example.org запрашиваемый виртуальный хост, то server.document-root смениться.

Если каталог /var/www/servers/news.example.org/pages/ существует, то он будет использован,, в противном случае будет использован /var/www/servers/www.example.org/pages/ по умолчанию.

Дабы те работали параллельно:

$HTTP["host"] !~ "^(news\.example\.org)$" {
  simple-vhost.server-root = "/var/www/servers/"
  simple-vhost.default-host = "www.example.org"
  simple-vhost.document-root = "pages"
}

$HTTP["host"] == "news.example.org" {
  server.document-root = "/var/www/servers/news2.example.org/pages/"
} 

Такая настройка активирет виртуальный хостинг для всех хостов отличных от news.example.org.

Опции

simple-vhost.server-root
корневая директория виртуального хостинга
simple-vhost.default-host
использовать это имя хоста если
simple-vhost.document-root
ниже директории виртуального хоста