Шаблоны файлов конфигурации (ISPmanager)
Материал из ISPWiki
Может возникнуть ситуация, когда тех данных, которые добавляет панель управления для того или иного объекта (WWW домен, доменное имя и т.п.), в соответствующий файл конфигурации, недостаточно. Например, вы хотите, чтобы при создании нового WWW домена в файл конфигурации httpd.conf автоматически добавлялась одна или несколько строк. В этом случае вам следует воспользоваться шаблонами для файлов конфигурации. Для создания шаблона файла конфигурации создайте файл с одним из имён, приведённых ниже, в поддиректории etc в директории панели управления, и внесите в него все те строки, которые должны автоматически добавляться в соответствующие файлы конфигурации. На текущий момент панель управления поддерживает следующие шаблоны:
- directory.templ - при создании нового WWW домена строки из файла шаблона будут автоматически подставляться в соответствующий раздел Directory файла конфигурации httpd.conf.
- domain.templ - при создании новой доменной зоны строки из файла шаблона будут автоматически подставляться в соответствующий раздел zone файла конфигурации named.conf.
- domainzone.templ - при создании новой доменной зоны файл зоны будет строиться на основе этого шаблона. Серверы имён, почтовые серверы и дополнительные доменные записи будут добавлены в этот файл автоматически. В шаблоне же вы можете указать собственные параметры SOA, дополнительные SPF записи и т.п.
- virtualhost.templ - при создании нового WWW домена строки из файла шаблона будут автоматически подставляться в соответствующий раздел VirtualHost файла конфигурации httpd.conf.
- server.templ - при создании нового WWW домена содержимое записи server будет автоматически загружаться из файла шаблона. Если в шаблоне определен location, совпадающий с location, создаваемый ISPmanager, то дублирования location не будет, и строки будут добавлены в соответствующую секцию.
Будьте внимательны! Строки из шаблонов для файлов конфигурации добавляются к строкам, создаваемым панелью управления, а не заменяют их.
Содержание |
Макросы
Вы можете использовать макросы - строки определённого вида, которые при обработке будут заменены на соответствующие значения.
domainzone.templ
- __IP__ - IP-адрес, указанный при создании домена.
- __NAME__ - имя домена.
virtualhost.templ
- __bind__ - адрес:порт создаваемого WWW домена.
- __DocumentRoot__ - корневая директория WWW домена. Данный параметр позволяет более гибко настраивать конфиги анализаторов логов.
- __ServerName__ - имя WWW домена.
- __ServerAlias__ - псевдонимы WWW домена
- __ServerAdmin__ - email администратора
- __DirectoryIndex__ - список индексных файлов
- __SuexecUserGroup__ - имя пользоватея и группа для apache 2
- __Group__ - группа пользователя для apache 1
- __User__ - имя пользователя для apache 1
- __CustomLog__ - путь до access.log
- __ErrorLog__ - путь до error.log
server.templ
- __server_name__ - имя WWW-домена.
Пример
Мы хотим, чтобы при создании WWW домена в соответствующий раздел Directory файла httpd.conf автоматически добавлялась строка
Deny from all
Для этого добавим эту строку в файл /usr/local/ispmgr/etc/directory.templ
echo "Deny from all" > /usr/local/ispmgr/etc/directory.templ
Если вы использовали макрос __DocumentRoot__, но при этом хотите, чтобы запись DocumentRoot __DocumentRoot__ тоже создалась, то ее надо также добавить в шаблон, потому что поля, использованные в макросе, не добавляются в файл конфигурации как самостоятельные записи. Исключение __ServerName__
