Apache Версия 2.0 Сервера HTTP
Description: | предусматривает динамически формируемое массовое действительное оказание гостеприимства |
---|---|
Status: | расширение |
Module Identifier: | vhost_alias_module |
Source File: | mod_vhost_alias.c |
этот модуль создает динамически формируемых действительных хозяев, позволяя IP адрес и/или
Host:
удар головой HTTP просит использоваться как часть имени пути, чтобы определить то, что регистрирует, чтобы служить. Это учитывает легкое использование огромного числа действительных хозяев с подобными конфигурациями.
если
mod_alias
или
mod_userdir
используются для того, чтобы перевести URIs к именам файла, они отвергнут директивы
mod_vhost_alias
описанный ниже. Например, следующая конфигурация нанесет на карту
/cgi-bin/script.pl
к
/usr/local/apache2/cgi-bin/script.pl
во всех случаях:
ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/
VirtualScriptAlias /never/found/%0/cgi-bin/
все директивы в этом модуле интерполируют вереницу в имя пути. Интерполированная вереница (впредь названный "названием") может быть любой названием сервера (см.
UseCanonicalName
директива для деталей на том, как это определено), или IP адрес действительного хозяина на сервере в пунктирно-квадрафоническом формате. Вставкой управляют спецификаторы, вдохновленные
printf
которые имеют множество форматов:
%%
|
вставка a
%
|
%p
|
вставить число порта действительного хозяина |
%N.M
|
вставка (часть) название |
N
и
M
используются, чтобы определить подвереницы названия.
N
выборы из отделенных точкой компонентов названия, и
M
характеры выборов, в пределах что
N
выбрал.
M
является дополнительным и неплатежи к нолю, если это не присутствует; точка должна присутствовать если и только если
M
присутствует. Интерпретация следующие:
0
|
целое название |
1
|
первая часть |
2
|
вторая часть |
-1
|
последняя часть |
-2
|
предпоследняя часть |
2+
|
второе и все последующие части |
-2+
|
предпоследнее и все предыдущие части |
1+
и
-1+
|
то же самое как
0
|
если
N
или
M
больше, чем число частей, доступных единственное подчеркивает, интерполирован.
для простых действительных хозяев на основе названия Вы могли бы использовать следующие директивы в вашем файле конфигурации сервера:
UseCanonicalName Off
VirtualDocumentRoot /usr/local/apache/vhosts/%0
запрос о
http://www.example.com/directory/file.html
будет удовлетворен файлом
/usr/local/apache/vhosts/www.example.com/directory/file.html
.
для очень большого количества действительных хозяев это - хорошая идея, чтобы устроить файлы, чтобы уменьшить размер
vhosts
справочник. Чтобы сделать это, Вы могли бы использовать следующее в вашем файле конфигурации:
UseCanonicalName Off
VirtualDocumentRoot /usr/local/apache/vhosts/%3+/%2.1/%2.2/%2.3/%2
запрос о
http://www.domain.example.com/directory/file.html
будет удовлетворен файлом
/usr/local/apache/vhosts/example.com/d/o/m/domain/directory/file.html
.
более даже распространенный из файлов может быть достигнут hashing с конца названия, например:
VirtualDocumentRoot /usr/local/apache/vhosts/%3+/%2.-1/%2.-2/%2.-3/%2
запрос примера прибыл бы от
/usr/local/apache/vhosts/example.com/n/i/a/domain/directory/file.html
.
альтернативно Вы могли бы использовать:
VirtualDocumentRoot /usr/local/apache/vhosts/%3+/%2.1/%2.2/%2.3/%2.4+
запрос примера прибыл бы от
/usr/local/apache/vhosts/example.com/d/o/m/ain/directory/file.html
.
Для действительного оказания гостеприимства на основе IP за Вами мог бы использовать следующее в вашем файле конфигурации:
UseCanonicalName DNS
VirtualDocumentRootIP /usr/local/apache/vhosts/%1/%2/%3/%4/docs
VirtualScriptAliasIP /usr/local/apache/vhosts/%1/%2/%3/%4/cgi-bin
запрос о
http://www.domain.example.com/directory/file.html
был бы удовлетворен файлом
/usr/local/apache/vhosts/10/20/30/40/docs/directory/file.html
если IP адрес
www.domain.example.com
были 10.20.30.40. Запрос о
http://www.domain.example.com/cgi-bin/script.pl
был бы удовлетворен, выполняя программу
/usr/local/apache/vhosts/10/20/30/40/cgi-bin/script.pl
.
если Вы хотите включить
.
характер в a
VirtualDocumentRoot
директива, но это сталкивается с a
%
директива, Вы можете работать вокруг проблемы следующим образом:
VirtualDocumentRoot /usr/local/apache/vhosts/%2.0.%3.0
запрос о
http://www.domain.example.com/directory/file.html
будет удовлетворен файлом
/usr/local/apache/vhosts/domain.example/directory/file.html
.
LogFormat
директивы
%V
и
%A
являются полезными в соединении с этим модулем.
Description: | динамически формируйте местоположение документа, поддерживают данного действительного хозяина |
---|---|
Syntax: |
VirtualDocumentRoot
interpolated-directory
|none
|
Default: |
VirtualDocumentRoot none
|
Context: | сервер config, действительный хозяин |
Status: | расширение |
Module: | mod_vhost_alias |
VirtualDocumentRoot
директива позволяет Вам определять, где Apache найдет ваши документы основанными на ценности названия сервера. Результат расширения
интерполированный - справочник
используется как корень дерева документа в подобной манере к
DocumentRoot
аргумент директивы. Если
интерполированный - справочник
none
тогда
VirtualDocumentRoot
выключен. Эта директива не может использоваться в том же самом контексте как
VirtualDocumentRootIP
.
Description: | динамически формируйте местоположение документа, поддерживают данного действительного хозяина |
---|---|
Syntax: |
VirtualDocumentRootIP
interpolated-directory
|none
|
Default: |
VirtualDocumentRootIP none
|
Context: | сервер config, действительный хозяин |
Status: | расширение |
Module: | mod_vhost_alias |
VirtualDocumentRootIP
директива походит
VirtualDocumentRoot
директива, за исключением того, что это использует IP адрес конца сервера связи для директивной вставки вместо названия сервера.
Description: | динамически формируйте местоположение справочника CGI для данного действительного хозяина |
---|---|
Syntax: |
VirtualScriptAlias
interpolated-directory
|none
|
Default: |
VirtualScriptAlias none
|
Context: | сервер config, действительный хозяин |
Status: | расширение |
Module: | mod_vhost_alias |
VirtualScriptAlias
директива позволяет Вам определять, где Apache найдет подлинники CGI в подобной манере к
VirtualDocumentRoot
делает для других документов. Это соответствует запросам о старте URIs
/cgi-bin/
, очень как
ScriptAlias
/cgi-bin/
.
Description: | динамически формируйте местоположение cgi справочника для данного действительного хозяина |
---|---|
Syntax: |
VirtualScriptAliasIP
interpolated-directory
|none
|
Default: |
VirtualScriptAliasIP none
|
Context: | сервер config, действительный хозяин |
Status: | расширение |
Module: | mod_vhost_alias |
VirtualScriptAliasIP
директива походит
VirtualScriptAlias
директива, за исключением того, что это использует IP адрес конца сервера связи для директивной вставки вместо названия сервера.