Пользовательский интерфейс управления сервером
реализуется FastCGI программой fcgimm, которая взаимодействует с
веб-сервером с одной стороны и протоколом управления сервера
Manjary (MMP) с другой. В простом случае,
fcgimm вызывается модулем HTTP и управляет
тем же сервером Manjary.
В примере конфигурации
./examples/manjary-http.xml есть готовые настройки
для доступа по адресу http://localhost:81/management/.
fcgimm {-b { [ IP
address | hostname | * | all | any ] {:port} | socket }} [-l logfile] [-L {[screen= yes | no ] | [,level=N] | [,history=N] | [,size=N]}] [-p path] [-r N]
Адрес локального сетевого интерфейса (опционально) и порт
TCP (отделённый от имени двоеточием) на котором будут
прослушиваться запросы WEB-сервера. Интерфейс может задаваться
адресом IP или именем. Чтобы использовались любые локальные
адреса, вместо адреса можно указать одно из значений:
*, all,
any. Так же может быть указано имя локального
сокета без двоеточия и номера порта. Допускается указание
множества опций -b.
Полное имя лог-файла. По-умолчанию лог-файл не создаётся. Однако, записи всегда отравляются на веб-сервер для помещения в журнал веб-сервера.
Опции журналирования:
Указывает, нужно ли выводить записи на экран, может
принимать значения: yes,
on, true,
1 - выводить на экран или
no, off,
false, 0 - не
выводить. По-умолчанию: yes.
Уровень детализации лог-файла. От 1 (наименьший) до
5 (самый подробный). По-умолчанию:
5.
Количество лог-файлов в ротации. Когда нужно начать
новый файл, текущий переименовывается в
file-000, перед этим старый file-000
переименовывается в file-001 и т.д., самый
старый файл удаляется. По-умолчанию:
4.
Ротация может производиться в любой момент времени,
для этого необходимо послать сигнал SIGALRM процессу fcgimm.
Максимальный размер
лог-файла. Когда достигается это значение выполняется
ротация лог-файлов. Если size установлено в 0,
ротация будет происходить каждый раз при переходе на новые
сутки. По-умолчанию: 512Kb.
Локальный путь к директории содержащий файлы использующиеся программой: таблицы стилей, список серверов и пр. По-умолчанию: fcgimm
Минимальный период времени через который будут
перезагружаться таблицы стилей для генерации веб-страниц. В
аргументе после числового значения может идти один из символов
указывающих на размерность: s - секунды
(по-умолчанию), m - минуты,
h - часы, d - дни. При
отладке изменений стилей имеет смысл указать 0 для загрузки
стилей при каждой генерации веб-страниц. По-умолчанию:
15m.
Здесь fcgimm будет прослушивать
локальный сокет \socket\fcgimm для запросов FastCGI из модуля HTTP
Manjary на том же сервере:
>fcgimm -b \socket\fcgimm -l fcgimm.log -Llevel=4,size=1Mb
Для работы с fcgimm в конфигурации модуля HTTP необходимо указать как к нему обращаться и (опционально) что запускать:
<fastcgi name="fcgi-mm"> <server>\socket\fcgimm</server> <start>./fcgimm -b \socket\fcgimm</start> </fastcgi>
Далее, в конфигурации виртуального хоста для директории management указать обращение к
соответствующему приложению FastCGI при запросе файлов соответствующих
маске "*.mm". Эта директория должна существовать, её содержимое не
имеет значения.
<redirect type="temporary" full-path="1" uri-path="/management/">/management/logon.mm</redirect>
<directory path="*/management">
<file must-exist="0">
<match>*.mm</match>
<handler>$fcgi-mm</handler>
</file>
</directory> Таким образом, пользователь запрашивая из браузера ресурс
http://хост:порт/management/
будет перенаправлен на адрес
http://хост:порт/management/logon.mm
(сработает директива redirect в первой строке примера) и получит
доступ к интерфейсу управления.
Чтобы использовать
fcgimm на отдельном сервере и управлять
одним или несколькими серверами Manjary
необходимо скопировать на целевую систему исполняемый файл
fcgimm.exe и директорию
fcgimm. По-умолчанию предполагается что
директория fcgimm находится в текущем пути. Это
может быть изменено ключом командной строки -p. Обязательно необходимо указать
адрес и порт на котором будут приниматься запросы FastCGI от WEB-сервера. Для этого
используется ключ командной строки -b.
Например: -b *:9001.
Далее, следует перечислить серверы
Manjary которые будут управляться. Список
серверов читается из файла servers.txt
находящегося в директории fcgimm (либо заданной
ключом -p).
Перечисленные в этом файле серверы должны быть соответствующим образом
настроены для обработки запросов
протокола управления.
Сетевой протокол FastCGI использующийся для передачи
данных между приложением и WEB-сервером не предусматривает
шифрования. Однако, в большинстве случаев приложение и WEB-сервер
работают в одной системе. Протокол управления
Manjary может использовать шифрование.
Приложение fcgimm будет использовать шифрование если управляемый
сервер Manjary находится не на локальном
хосте и на на нём установлен сертификат и приватный ключ.