VirtualHost
VirtualHost — директива в конфигурационном файле веб-сервера Apache, предназначенная для сопоставления доступных на сервере IP-адресов, доменов и директорий на сервере, а также управления доступными на сервере сайтами.
В теге <VirtualHost> указываются IP-адреса и порты, которые используются на сервере. Вместо адреса или порта можно указать *, тогда прослушиваться будут все доступные на сервере IP-адреса.
Теги <Directory> используются для указания правил внутри определённых директорий. Например, AllowOverride All позволяет использовать внутри директорий сервера файлы .htaccess, allow from all позволяет доступ из Интернета со всех адресов (если это не будет переопределено нижележащими файлами .htaccess), а RedirectMatch управляет перенаправлениями.
Основные настройки
править- ServerAdmin — электронная почта администратора сервера.
- ServerName — доменное имя сервера.
- ServerAlias — алиас (псевдоним) для имени сервера.
- DocumentRoot — корневая директория виртуального хоста в операционной системе.
- ErrorLog — название журнала ошибок сервера.
- CustomLog — название журнала доступа к серверу.
Пример
править<VirtualHost 12.34.56.78>
ServerAdmin webmaster@domain.ltd
ServerName domain.ltd
ServerAlias domain.ltd *.domain.ltd
DocumentRoot /var/www/domain.ltd/htdocs/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/domain.ltd/htdocs/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
RedirectMatch ^/$ /index.html
</Directory>
ErrorLog /var/log/apache2/domain.ltd-error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/domain.ltd-access.log combined
ServerSignature On
</VirtualHost>