Основным конфигурационным файлом сервера является `amstat.conf'
.
Этот файл
читается всеми компонентами сервера, поэтому каждая из них должна знать,
где он находится. В связи с тем, что сервер доступен только в двоичной
форме и, в то-же время, может быть установлен Вами в произвольный каталог,
компоненты сервера ищут `amstat.conf'
в каталоге `/etc'
.
Для удобства перехода от предыдущих версий сервера, компоненты сервера
сначала пытаются читать файл `/etc/amstat-1.0.conf/'
и
только если он не найден - `/etc/amstat.conf'
(это
позволяет иметь на одном компьютере две версии сервера).
Если Ваша система поддерживает символьные ссылки, то я рекомендую не
копировать файл в каталог `/etc'
, а сделать символьную
ссылку командой:
ln -s ~stat/amstat.conf /etc/amstat.conf
Рассмотрим все параметры конфигурации, которые Вы можете использовать в этом файле:
Название базы данных EasySQL, используемой сервером. По умолчанию - amstat (смотрите описание EasySQL). Тип реально используемого сервера и все параметры соединения с ним настраиваются в EasySQL динамически. Смена сервера или каких-либо параметров настройки может быть произведена без перекомпиляции `amstat'.
Уровень отладки EasySQL - если не нулевой, то имеет более высокий приоритет, чем указанный в собственной конфигурации EasySQL. Это удобно при отладке, если EasySQL используется не только из amstat.
Может принимать значения от 0 до 0xffff - смотрите документацию EasySQL для более подробного описания возможных значений. По умолчанию (и при нулевом значении) принудителной установки уровня отладки не происходит.
Домашний каталог сервера. Здесь производится поиск большинства
конфигурационных файлов, отсюда "растет" иерархия подкаталогов сервера.
По умолчанию - `/var/local/stat'
. Типичной настройкой
является указание только этого параметра и никаких других из группы
"каталоги".
Каталог, в котором будут создаваться временные файлы - "замки". Сервер
использует их для блокировки в те моменты, когда одновременный доступ к
какому-либо ресурсу нескольких модулей нежелателен. Допустимо указать
здесь системный каталог для блокировок (в BSD это обычно
`/var/spool/locks'
). По умолчанию - {home-dir}/locks
Каталог, в котором лежат исполняемые модули. Не рекомендуется указывать этот параметр. По умолчанию - {home-dir}/bin
Каталог, в котором хранятся необработанные запросы пользователй к серверу, и прочая информация, относящаяся к запросам пользователей. По умолчанию - {home-dir}/server
Каталог, в котором хранятся персональные каталоги пользователей. Внимание! В текущей версии список пользователей определяется считыванием списка подкаталогов в нем! В связи с этим в нем не должно быть "лишних" каталогов. Значение по умолчанию - {home-dir}/userbase
Домен по умолчанию для остальных параметров этой группы. На все остальные параметры группы распространяется следующее правило умолчания: если в адресе не найден символ '@', то к нему справа приписывается @{domain}.
Адрес постмастера. По умолчанию - postmaster@{domain}.
Адрес, который будет подставляться в поле "From: "
ответов сервера. По умолчанию - statserv@{domain}.
Адрес администратора сервера. Используется в сообщениях в контексте
"пишите администратору сервера по адресу ..", а также подставляется в
исходящие от сервера письма в поле "Reply-To: "
. По умолчанию -
stat-adm@{domain}.
Адрес, для подстановки в поле "Sender: "
. Обычно именно этот
адрес попадает в статистику - по нему выделить в статистике почту от
сервера и, например, сделать ее бесплатной. Кроме того на этот адрес
сыпятся различные сообщения об ошибках от почтовой службы - поэтому адрес
должен быть реальным (обычно alias на postmaster или в /dev/null). По
умолчанию поле "Sender: "
не формируется.
Адрес, на который будут дублироваться все почтовые сообщения, отсылаемые сервером. Удобно для отладки. Значения по умолчанию для этого параметра нет.
Название Вашей организации по английски. Вписывается в поле Organization: писем всех исходящих от сервера статистики писем. Кроме того, к этому полю привязан ключ.
Имя администратора по английски. Вписывается вместе с адресом
(параметр конфигурации admin) в поле "Reply-To: "
всех
исходящих от сервера статистики писем.
Почтовый агент. Должен воспринимать на входе письмо со всеми
заголовками и доставлять его по указаным в аргументах через пробел
адресам. Если в определение входит комбинация "%s", то
она заменяется на {sender}. Значение по умолчанию -
"/usr/lib/sendmail -f%s "
.
Напоминание: параметры можно заключать в кавычки - это
единственный способ передать в качестве параметра настройки строку,
оканчивающуюся на пробел.
Этот параметр необходимо добавить после
оплаты, регистрации и получения ключа
для указания на его местоположение.
Значения по умолчанию у этого параметра нет, однако рекомендуется
разместить ключ с именем `.Key'
> в домашнем каталоге сервера.
Если задан этот параметр, то модулем listener проверяется соответствие real user id с указанным значением. Полезно для предотвращения подсовывания писем в listener "гостями".
Если задан этот параметр, то модулем listener проверяется соответствие real group id с указанным значением.
Если задан этот параметр (значение может быть 'yes' или 'true'), то сразу после помещения запроса пользователя в очередь запускается разборщик очереди (фоновым процессом). Полезно на замену запуску модуля runqueue через cron.
Для использования этой опции не забудьте добавить listener флажки setuid/setgid. Это можно сделать такими командами:
chown 0 listener
chgrp 0 listener
chmod ug+s listener
Если задан этот параметр (значение может быть 'yes' или 'true'), то обработанные сервером почтовые задания не удаляются, а переименовываются. Это позволяет накапливать архив запросов клиентов к серверу.
Ставка НДС в виде дробного числа меньшего единицы. По умолчанию - 0.2 (20%).
Разделитель тысяч в денежных единицах. По умолчанию значение берется из locale.
"Точность" валюты, ее минимальное значение. По умолчанию значение берется из locale.
Точность промежуточных величин. В настоящий момент используется только для цен прайс-листов. По умолчанию - одна сотая {currency-precision}.
Задает двухбуквенный код системного языка. Значение по умолчанию зависит от Вашего домена - для доменов .ru или .su значением будет `ru'. Во всех остальных случаях - `en'. Рекомендуется всегда задавать этот параметр в некоторое осмысленное значение (ua, by, uz, it и т.п.), даже если все Ваши пользователи пользуются одним и тем-же языком - никогда нельзя гарантировать, что завтра у Вас не появится пользователь из, скажем, Новой Гвинеи.
Задает цифровой идентификатор пользователя, от имени которого будут выполнять все действия модули сервера. Может быть опущен - в этом случае изменения uid сервер делать не будет.
Задает цифровой идентификатор группы пользователя, от имени которого будут выполнять все действия модули сервера. Может быть опущен - в этом случае изменения gid сервер делать не будет.
Параметр позволяет задать валюту "по умолчанию" для всех прайс-листов. Полезно для случаев "долларовых" цен. Подробнее смотрите в описании модуля convertstat. По умолчанию цены прайс-листов считаются выраженными в единицах основной валюты.
Параметр позволяет задать символы, которыми ограничиваются команды в текстах форм генератора отчетов. Должно быть указано не менее двух символов. Подробнее смотрите в описании модуля mkreport>. По умолчанию - "<>"
Список допустимых символов в доменах и именах пользователей
(используется при преобразовании адресов из доменной формы в банговую);
не должен включать в себя символы из набора `!@%<>,:
' -
в Internet адресах они имеют специальное значение. По умолчанию
допустимыми считаются все буквы, все цифры и символы из набора
`-_.[]/=
'.
Уровень выдачи отладочной информации. Чем больше значение, тем более подробная информацию будет выводена. Смысл имеют значения от 0 до 10. По умолчанию - 0.
Если этот параметр установлен в `yes' или `true', то вся генерируемая сервером почта будет отсылаться администратору сервера и только ему. Полезно после внесения изменений в формы отчетов для провеки (чтобы не беспокоить пользователей).
Проверить созданную Вами конфигурацию можно модулем ckconfig, запущенным без параметров.
Кроме того, проверить правильность интерпретации сервером параметров конфигурации можно запустив ckconfig с параметром `-n' .
Внимание! Для нормальной работы сервера модуль
ckconfig должен быть доступен всем модулям сервера (с его
помощью читают конфигурацию небинарные модули - shell и perl)!
Наиболее удобно сделать символьную ссылку из каталога, в котором
производится поиск программ общего назначения
(например `/usr/local/bin'
) в ее местоположене в структуре
сервера. Например, если сервер установлен в `/var/local/stat'
,
то команда может выглядеть так:
ln -s /var/local/stat/bin/ckconfig /usr/local/bin