WTG Zebra 1.00. Ядро.
Содержание раздела:
1. Разделение ресурсов
2. Наименования
3. Настройки и установки
3.1. Навигация
3.2. Основные параметры
3.3. Дизайн
3.4. Разделение ресурсов (пункт администрации)
3.5. Администраторы
3.5.1. Элементы
3.5.2. Лица
3.7. Резервирование и обновление
3.8. Сетевые параметры
3.9. Параметры АС
3.10. Параметры индексации
3.11. События
3.12. О Zebra
3.13. Системные параметры
4. Основной список int
Ядро Zebra представляют собой несколько
процедур, используемых большинством модулей. Эти процедуры обеспечивают
генерацию страниц на основе описаний, манипуляцию данными, выбор значения в
зависимости от пользовательских и/или сайтовых настроек и так далее. В целом,
круг действий ядра довольно ограничен, однако для того и существуют прочие
модули, чтобы на основе возможностей, предоставляемых ядром, организовать
конечную функциональность Zebra.
Более подробная информация о взаимодействии с
ядром находится в разделе
«Руководство по
API». В данной же главе рассматриваются параметры настройки ядра и
прилегающих областей.
1. Разделение
ресурсов
Заложенные в основу Zebra многоязычность и
многопрофильность ресурса реализуются довольно простым способом.
Предполагается, что в базе страниц имеются ресурсы, обладающие
идентификаторами, однозначно связываемыми с указанными параметром locale и
профилем. Либо же обязательно присутствует ресурс по умолчанию (т. е.
locale=<default>,
profile=<default>. Тогда, в зависимости
от текущих значений пользовательских настроек и установок сайта, проводится
поиск ресурса в установленном порядке сочетаний locale и профиля. Первое
обнаруженное значение прерывает поиск.
Порядок поиска формируется следующим образом.
Допустим, имеются настройки сайта: языковая (
locale), профильная
(
profile). Настройки или умолчания пользователя: языковая
(
ulocale), профильная (
uprofile). Тогда порядок поиска
значений устанавливается в располагаемых следующей последовательностью комбинациях:
ulocale + uprofile
ulocale + profile
ulocale
locale + uprofile
locale + profile
locale
dlocale + uprofile
dlocale + profile
dlocale
Здесь
dlocale системная locale
по умолчанию, значение которой устанавливается при инсталляции Zebra в
зависимости от интерфейса (языка), который выбрал администратор, и более не
меняется. Если был выбран русский язык (
ru), то конечной инстанцией
в поиске значений будет являться ресурс с разделяемым идентификатором
ru.
Может показаться, что поиск значения
процедура длительная и непродуктивная. Действительно, при генерации
одной-единственной страницы осуществляется от двадцати уникальных запросов к
базам с соответственным поиском значений, и чем сложнее страница (вернее, ее
описание), тем больше будет запросов. Например, для генерации конкретно этой
страницы документации осуществлено около сотни обращений. Однако на самом деле
указанный порядок существенно сокращается при совпадении значений в нем. В
предельно простом случае (и, пожалуй, наиболее распространенном) он может
свестись к запросу единственного параметра соответствующего
dlocale. В итоге
продуктивность работы Zebra будет зависеть только от вас насколько
хорошо вы спроектируете сайт. Повышению скорости и снижению
системных запросов также способствует оптимально выбранный формат баз данных,
на основе которого работает Zebra (на основе сбалансированных бинарных
деревьев), а также кэширование параметров, применяемое в самой Zebra. В результате
не создают большой нагрузки до нескольких тысяч обращений к базе (в том числе
при сохранении данных) за сеанс.
2. Наименования
Должное внимание следует уделить системе
наименований, считающейся корректной с точки зрения Zebra, поскольку от этого
будет частично зависеть работоспособность сайта.
Как правило, Zebra работает с идентификаторами
ресурсов (в данном контексте «ресурс» означает любой элемент,
зарегистрированный в базах сайта, доступный Zebra под явно определенным именем;
это: записи, подпрограммы, страницы, ключи, приведенные ссылки, свойства в АС и так далее).
Идентификаторам для ясности, удобства или еще каких-то нужд может быть
сопоставлен комментарий на человеческом языке. Однако первичным является
идентификатор, все остальное вторично.
Идентификатор ресурса в Zebra может быть
составлен с использованием всех буквенно-цифровых символов латинской раскладки
клавиатуры, а также символа подчеркивания
_. При этом рекомендуется не
ставить цифру в качестве первого символа идентификатора. Хотя сама Zebra и не
делает различий, таковые могут проявиться в некоторых случаях, когда управление
передается специфическим процедурам языка Perl, а для них наличие цифры в
начале идентификатора является значимым.
Ну и последняя деталь идентификаторы в
Zebra регистрозависимы. То есть страницы с идентификаторами
index,
Index и
INDEX это три разные страницы, но никак не
одна.
3. Настройки и установки
Администрирование параметров ядра Zebra
осуществляется посредством административного модуля
ze.cgi. Этот
модуль также реализует интегрирующие функции администрирования и, помимо
доступа к ядру, предоставляет доступ к администрированию остальных модулей,
учитывая при этом установленные права администраторов.
3.1. Навигация
Выбор любого из пунктов меню
«Действие» активизирует переход на выбранный пункт (в том случае,
если у вас разрешено использования JavaScript в браузере и ECMAScript
в настройках администрирования Zebra, иначе дополнительно
потребуется нажатие на кнопку отправить). Вообще, такой автоматизм реализован
во всех разделах администрации для главного меню, всегда располагающегося в
верху страницы и выделенного темным фоном. В зависимости от раздела это
меню может изменяться.
Дополнительные меню выбора locale и профиля
администрируемых ресурсов действуют только в тех случаях, когда
администрируются зависимые от них ресурсы. Zebra использует ряд параметров, не
зависимых ни от каких разделяемых установок. На них эти пункты, разумеется,
влиять не будут.
Далее
разделяемые ресурсы будут явно отмечаться
звездочкой.
Во всех подчиненных разделах администрирования в
правой части главного меню находится кнопка со значком
#. Нажатие на
эту кнопку приведет к возвращению в стартовое меню администрирования Zebra.
Если осуществляется администрация модуля, то рядом с этой кнопкой будет
отображаться еще одна, обозначаемая символом
*. Нажатие на нее
приведет к переходу в стартовое меню администрирования данного модуля.
3.2. Основные параметры
Функционирование.
Иногда может оказаться необходимым остановить
работу всех ресурсов Zebra для осуществления каких-то операций. Например,
обновление программного обеспечения и базовых настроек Zebra в отдельных
случаях может потребовать выполнение такого условия. Для подобных случаев
реализована возможность временного отключения работы всей внешней части Zebra
(включая неявно запускаемые модули например, Zebra Cron), при этом
административная часть остается полностью работоспособной. Отключение
обеспечивается созданием файла-флага блокировки
zUSERKEYlock.lock, в
течение всего срока существования которого Zebra не запускается.
Однако во избежание вредительских действий
со стороны непредвиденных обстоятельств максимальный срок существования файла
блокировки определен одним часом, что выбрано из предположения о наиболее
вероятном окончании критичных к разделению ресурсов Zebra работ. Если
необходимо продлить срок, потребуется просто еще раз обновить отключение.
Состояние Zebra и оставшееся время до
расконсервации (если работа приостановлена) сообщаются в главной статистике
Zebra на стартовой странице администрирования.
Элементы.
*
Общее название сайта.
Сопоставляется ключу
sitename.
Адрес сервера.
Сопоставляется ключу
sitehost. Следует указывать полный адрес, включая
начальный признак протокола, например:
http://www.wtg.ru. Завершающий слеш
ставить не нужно.
*
Виртуальный путь к html-каталогу на
сайте. Сопоставляется ключу
dirsite.
*
Физический путь к html-каталогу на
сайте. Можно использовать полный либо относительный путь. Если указывается
относительный, то его нужно отсчитать от cgi-каталога сайта.
*
Виртуальный путь к bin-каталогу на сайте.
Указывается путь к корневому каталогу хранения бинарных файлов (в
том числе графических) на сайте. Сопоставляется ключу
dirbin.
*
Физический путь к bin-каталогу на сайте.
Указывается физический путь к корневому каталогу бинарных файлов на
сайте. Можно использовать полный либо относительный путь. Если указывается
относительный, то его нужно отсчитать от cgi-каталога сайта.
Примечание.
Параметр dircgi и соответствующий ему физический, означающие
виртуальный и физический пути соответственно к каталогу скриптов, явно
указывать не нужно. Они рассчитываются автоматически при запуске Zebra.
Основной язык сайта. Этот
параметр устанавливает
locale сайта, используемую при поиске
разделяемых значений. По умолчанию используется значение, с которым
производилась инсталляция Zebra. Обычно это
ru (Русский).
Основной профиль сайта. Параметр
устанавливает значение переменной
profile, используемой при поиске
разделяемых значений. По умолчанию используется неопределенное значение (то
есть полное отсутствие такового), которое в дальнейшем будет называться
<default>.
*
Имя главного администратора.
Значение, которое подставляется в страницы, требующие наличия ссылки на
электронный адрес ответственного за сайт лица. Сопоставляется ключу
adminname.
*
Адрес e-mail администратора.
Сопутствует предыдущему параметру. Сопоставляется ключу
adminemail.
*
Имя «системного
пользователя». При функционировании почтово-роботной системы Zebra
(см.
«Почтовые службы»)
используется как имя отправителя письма от лица почтовой системы Zebra.
Сопоставляется ключу
systemuser.
*
Адрес e-mail «системного
пользователя». При функционировании почтовых служб Zebra
используется как электронный адрес отправителя письма от лица Zebra.
Сопутствует предыдущему параметру. Сопоставляется ключу
systememail.
*
Шаблон представления даты.
Устанавливает шаблон по умолчанию, который будет использоваться при отображении
дат каких-либо событий. В шаблоне используются ключи времени, обозначенные в
списке
int (см.
«Основной список
int»). Сопоставляется ключу
date.
*
наименования дней
недели. Сопоставляются ключу
wday. Названия следует каким-либо явным
образом разделить, например, запятой.
*
наименования месяцев.
Сопоставляются ключу
wmonth. Названия следует каким-либо явным
образом разделить, например, запятой.
Смещение времени относительно сервера, мин.
Посредством этого параметра можно задать смещение глобального времени (в
минутах) для Zebra во имя корректировки оного, если сервер расположен в другом
часовом поясе. Отрицательное смещение определяется минусом в начале параметра.
Отображать статистику внизу
страниц. Глобальный переключатель, действует на отображение в самом низу
всех генерируемых посредством Zebra страниц статистики. В некоторых модулях при
включенной статистике дополнительный параметр командной строки
statistic=off, либо присутствие в описании страницы специального
ключа
$nostatistic может подавить ее вывод. При выборе пункта
«Производительность» включается механизм подсчета затрат процессорного
времени на реализацию запроса (см. ключ
$benchmark). Если после
включения режима «Производительность» Zebra перестала работать,
значит, он не поддерживается установленной на сервере конфигурацией Perl. В
таком случае необходимо восстановить параметры вывода статистики (см.
«FAQ»).
*
шаблон статистики.
Определяет шаблон выводимой статистики. Предполагает наличие следующих ключей:
$elapsed
время (секунд), затраченное на обработку запроса и генерацию страницы
$date
текущая дата в установленном формате
$benchmark
процессорное время, затраченное на выполнение запроса; ключ действителен
только при установке вывода статистики в положение
«Производительность»
$ip
IP-адрес, с которого пришел запрос
$referer
адрес страницы, с которой пришел запрос
Если где-либо в описании страницы указать
ключ
$nostatistic, то конкретно для этой страницы статистика
выводиться не будет.
3.3. Дизайн
Элементы.
*
Стандартный фрагмент начала
страницы. Сопоставляется ключу
begbody.
*
Стандартный фрагмент окончания
страницы. Сопоставляется ключу
endbody.
Элементы
begbody и
endbody, как правило, специально обрабатываются Zebra. Если ключи,
им соответствующие, находятся в описании страницы, то первоначально происходит
их подстановка в соответствующие места, после чего проходит вся остальная
интерполяция.
*
Чередующиеся цвета в таблицах.
В некоторых случаях результатом работы Zebra может быть таблица, содержащая
перечисление каких-то элементов страниц, пользователей, сообщений и т.
д. В таком случае можно задать чередование цвета фона строк или ячеек в этих
таблицах. Соответственно установленным ключам
dcolor будет
добавляться очередное значение из списка, причем перебор осуществляется по циклу.
Количество элементов не ограничено. Указывается либо мнемоническое название
цвета, предусмотренное стандартом HTML, либо явное определение в формате
#RRGGBB. В качестве разделителя можно использовать пробел или
запятую. Сопоставляется параметр, соответственно, ключу
dcolor.
*
Шаблон системного сообщения.
Общее описание страницы системного сообщения. Для интерполяции непосредственной
информации необходимо указание ключей
$title
и
$info. Внутренний идентификатор
шаблона
systempage.
*
информация об ошибочном
запросе. Сообщение, которое внедряется в тело системного сообщения, если
страница или ресурс, который запросил пользователь, не найдены на сайте.
*
информация о запросе
несуществующего модуля. Сообщение, которое внедряется в тело системного
сообщения, если сделан запрос, ссылающийся на незарегистрированный или
неподдерживаемый Zebra модуль.
*
информация об отсутствии поддержки
раздела. Сообщение, которое внедряется в тело системного сообщения, если
сделан запрос, обращенный к зарегистрированному модулю Zebra, но в запросе
указан раздел или какая-то иная операция, в данный момент не поддерживаемые
этим модулем.
*
информация об ошибке инициализации АС.
Сообщение, которое внедряется в тело системного сообщения, если
при инициализации модели данных используемой АС или открытии базы данных АС
произошла ошибка.
*
информация о внесении
пользовательских изменений. Сообщение, которое внедряется в тело
системного сообщения, если пользователем сделан запрос, связанный с
активацией зарегистрированного аккаунта, изменением адреса электронной почты.
Подробнее о составлении описания данного параметра см.
«Описание активации». Внутренний
идентификатор
useractivated.
*
информация об отсутствии доступа.
Сообщение, которое внедряется в тело системного сообщения, если
пользователю не разрешен доступ к запрошенным ресурсам.
*
форма запроса пользовательского пароля.
Сообщение, которое внедряется в тело системного сообщения, если
в адресной строке обнаружен ключ
passwordrequest=1. При этом в шаблоне
должна быть тем или иным способом определена следующая форма для передачи данных:
<form action="$dircgi/$current" method="post">
E-mail: <input type="text" name="email" value="$email" size="20">
<input type="submit" name="passwordrequest" value="Отправить">
$childpars
</form>
При обнаружении в потоке данных ключа
passwordrequest Zebra автоматически
переходит в режим генерации системного сообщения с формой запроса пароля
для его восстановления отправлением на e-mail.
*
информация об отправлении письма с паролем.
Сообщение, которое внедряется в тело системного сообщения, если
системой восстановления паролей Zebra был обработан запрос на пользовательский пароль.
Вышеперечисленные информационные параметры
состоят из двух секций. Первое поле ввода (высотой 1 символ) содержит название
страницы, которое сопоставляется ключу
$title. Содержимое многострочного
поля ввода представляет собой собственно информационное сообщение, сопоставляемое при
генерации системной страницы ключу
$info.
*
Форма аутентификации.
Описание страницы, используемой Zebra при проведении процедуры аутентификации
пользователя (подробнее см.
«Описание
аутентификации»). Внутренний идентификатор
wrongpassword.
*
Форма параметров пользователя. Здесь можно выбрать
форму, используемую Zebra при проведении процедуры регистрации пользователя на
сайте и изменении основных зарегистрированных параметров
пользователя. Сами формы определяются в разделе
«Пользовательские формы».
Подробнее об используемых ключах и событиях см.
«Описание аутентификации».
По умолчанию выбирается форма с идентификатором
system.
Разрешить подмену шаблонов. Для возможности реализации
нескольких различных дизайнов сайта на базе одного и того же комплекта Zebra
позволяет подменять шаблоны, определяемые в разделе «Дизайн»,
другими, если они под одноименными идентификаторами существуют в
«Записях» (подробнее см.
«Группы и подгруппы страниц»).
3.4. Разделение ресурсов (пункт администрации)
Zebra предоставляет редактору степени свободы по развитию ресурса
в двух базовых направлениях. Во-первых, возможно определить неограниченное количество
языков, на которых будет работать сайт. Заполнение ресурсов соответствующим контентом
остается на совести редактора. Во-вторых, возможно определить неограниченное же
количество профилей, имеющие такой же характер, как и языки, но зависящие не от
опциональных параметров, передаваемых браузером, а от выбираемых самим пользователем
пунктов (подробнее см.
«Разделение ресурсов»).
Добавление новых или удаление уже неиспользуемых языков осуществляется
последовательно путем выбора необходимого пункта в меню «Идентификатор
языка». В списке указан двухсимвольный идентификатор языка (согласно RFC-1766, ISO 639-1),
а также комментарий к нему. В дальнейшем обращение к ресурсам на этом языке будет
возможно при указании в адресной строке параметра
l=LANG или
lang=LANG,
где
LANG двухсимвольный идентификатор языка. Для каждого языка
можно сопоставить его псевдоним, который будет использоваться на вашем сайте для
наименования этого языка.
Идентификаторы и наименования профилей определяют применение ресурсов,
соответствующим этим профилям. Профиль можно задать явным образом путем указания в
адресной строке параметра
f=PROFILE или
prof=PROFILE, где
PROFILE
требуемый профиль.
Название профиля зависит от выбранного языка и профиля. Название языка
независимо от выбранного языка и профиля.
3.5. Администраторы
Административная часть Zebra является крайне
важной составляющей комплекса. От прозрачности и доступности разделов
администрирования, от понятности предназначения элементов и переключателей, а
также описаний к ним зависит удобство работы администратора и сохранность
данных, а порой и работоспособность сайта. Административные модули не
должны задерживать обработку данных, выполняемую внешними модулями, но обязаны
максимальным образом оптимизировать данные, чтобы эту обработку сделать как
можно более быстрой.
Исходя из таких предпосылок, был принят
следующий вариант строения модулей Zebra.
Все модули Zebra поставляются в виде двух, трех или
более cgi-файлов, один из которых является внешним приложением выполняет
запросы и прочую работу, связанную с общением с пользователями. Второй модуль
является административным и предназначен для изменения параметров работы
первого. В третий модуль могут быть вынесены общие используемые процедуры
первых двух. Обычно имя файла такого модуля заканчивается буквой
x и
какой-либо цифрой, как правило, нулем. Если существуют другие модули, содержащие
специфические или редко используемые процедуры, они обычно именуются аналогично
третьему модулю с наращиванием конечной цифры.
В разделе «Администраторы» модуля
администрирования ядра осуществляется настройка некоторых параметров
администрирования, а также регистрация и определение прав доступа
администраторов.
3.5.1. Элементы
Таймаут сессии, с. При авторизации администратора
создается сессия, в пределах которой затем происходит его взаимодействие с сайтом.
В целях безопасности логин и пароль администратора передаются только в начале сеанса,
а затем только идентификатор сессии. Если административный модуль получил
данные в сессии, последний запрос по которой пришел более, чем установленный данным
параметром промежуток времени назад, сессия считается исчерпанной, и администратору
предлагается повторная авторизация. Минимально возможное значение 300 с (5 мин).
Оформление. Zebra позволяет установить несколько различных вариантов
оформления административных разделов. Отличаться могут цветовая гамма, гарнитуры и размеры
шрифтов и т. д. Варианты профилей оформления устанавливаются в настройках Zebra
(подробнее см.
«FAQ»).
Выводить комментарии к
разделам. Предписывает выводить после всех значимых элементов
административных страниц комментарии, описывающие присутствующие элементы.
Может быть полезным на первых порах использования Zebra.
Выводить статистику разделов. В
разделах, подразумевающих работу с динамически изменяемыми данными (например:
страницы, записи, подпрограммы), предписывает выводить сводную статистику
зарегистрированных элементов. При большом количестве таковых сбор статистики
может сильно замедлить работу модуля, что способно привести даже к полному
отказу от работы. В таком случае статистику рекомендуется отключить.
Отображать название элемента вместо
идентификатора. Как уже было сказано ранее, Zebra на системном уровне
оперирует идентификаторами ресурсов. Однако для удобства администратора в
списках элементы могут отображаться не только под идентификаторами, но и
описаниями себя на человеческом языке. Этот параметр предусматривает
переключение между вариантами отображения.
Укорачивать длинные названия
элементов. Если название элемента в списке слишком длинно, результат может
крайне исказить вид страницы в браузере. Во избежание такой неприятности
предусматривается укорачивание названия. Можно выбрать три метода.
Максимальная длина названия в
списке. Задает максимальную длину для действия предыдущего параметра.
Отображать адрес e-mail вместе с
именем пользователя. Действует в разделе администрирования
пользовательских параметров, влияет на отображение меню со списком
пользователей.
Разрешить администрирование параметров пользователя.
Параметры пользователей в базе пользователей Zebra можно разделить на две категории:
системные и настраиваемые. Системные это параметры, которые определяются
модулями и используются (необходимы) для их корректной работы. Настраиваемые
те, что определяет сам администратор сайта для возможности гибкого получения широкого
спектра интересующей его информации. Настраиваемых параметров может быть очень много.
Данный пункт позволяет установить один из трех режимов администрирования параметров
пользователя: когда доступны для изменения все параметры, когда доступны для изменения
только системные параметры, когда доступны для изменения только настраиваемые параметры.
(Подробнее см.
«Параметры пользователя».)
Отображать в списке только локальные
и профильные элементы. Если в базе зарегистрировано большое количество ресурсов,
навигация по ним становится довольно затруднительной. Для такого случая можно
предписать фильтрацию элементов согласно установленным разделяемым
идентификаторам, соответственно
locale и
profile.
Количество элементов в списке.
Задается максимальное количество элементов в выпадающем списке. Имейте в виду,
что при слишком больших значениях может начать функционировать
некорректно браузер, а при слишком малых вам придется долго листать список, чтобы найти
искомый ресурс.
Ширина столбца комментария,
Ширина столбца полей формы,
Высота малых многострочных полей
формы,
Высота больших многострочных полей формы,
Ширина
(длина) текстовых полей в формах. Параметры, определяющие размеры
элементов в административных формах. Варьируя их, можно максимально удобно
подстроить под себя администрацию Zebra.
Разрешить использование форм multipart/data.
Применение форм типа «multipart/data» необходимо для передачи на сервер
целых бинарных файлов (например, рисунков).
Уровень регистрации статистики.
Определяется уровень подробности ведения log-файлов Zebra. При детальном будут
регистрироваться все события, происходящие с ведома Zebra. В таком случае файл
статистики очень быстро будет увеличиваться в размерах, поэтому детальный
вариант целесообразно выставлять, если вы желаете подробно проследить жизнь и
удивительные приключения Zebra в течение какого-то непродолжительного
промежутка времени.
Приводить внутренние обозначения
параметров (API). При разработке описаний страниц для полноценного
использования возможностей Zebra необходимо использовать ключи и записи.
Некоторые параметры Zebra заранее сопоставляются предопределенным ключам
списка int. Данный пункт настройки предписывает
отображать рядом с такими параметрами название соответствующего ключа.
Использовать ECMAScript на страницах
администрации. Для удобства администрирования в Zebra предусмотрено
использование ECMAScript (подмножества языка JavaScript), позволяющего
автоматизировать некоторые действия на уровне браузера. Например, после выбора
какого-либо пункта в главном меню браузер, не ожидая специально нажатия кнопки
«Отправить», перейдет в раздел, соответствующий выбранному пункту.
Разумеется, чтобы это дело работало, браузер сам должен поддерживать скриптовые
языки.
3.5.2. Лица
Элементы.
Администратор. Имя
администратора или, иначе, его login. Одновременно это и идентификатор
администратора. Описание или комментарий здесь не подразумеваются.
Пароль. Пароль администратора не
должен быть простым по причинам, не требующим пояснений. Не забывайте об этом.
Существуют некие эмпирические правила, описывающие, как создать и хранить
пароль. При необходимости можно даже найти программы, позволяющие сгенерировать
сложный, но запоминающийся текст, который с успехом можно применить в этом
качестве. Здесь будет, пожалуй, нелишне упомянуть замечательный пароль,
использованный персонажем Падлой из книги «Фальшивые зеркала»
Сергея Лукьяненко для кодирования файла с виртуальным оружием:
«Сорок тысяч обезьян в жопу сунули банан».
Реальное имя администратора. Реальное имя администратора,
которое будет использоваться при отправлении писем, отображении административных разделов
и т.д.
Адрес e-mail администратора. Указание адреса электронной
почты нужно также для случая, если администратор запамятовал свой пароль доступа.
Тогда Zebra может по запросу отправить ему по указанному адресу письмо с паролем.
Язык. Язык интерфейса для этого администратора. На язык
администрируемых ресурсов не влияет.
Оформление. Параметр аналогичен пункту в общих параметрах
администрирования, но позволяет установить профиль для данного администратора индивидуально.
Ограничить вход по IP. Данное
ограничение можно применить для дополнительного обеспечения безопасности сайта.
Если получить администраторский доступ по указанным логину и паролю попытается
человек, IP-адрес которого не отвечает заданному шаблону, в доступе будет
отказано. Соответствие адреса шаблону проверяется сопоставлением их, начиная с
первого символа. То есть шаблону
45.243.17 будет соответствовать
адрес
45.243.178.221, или
45.243.17.221, но не
245.243.178.221.
Можно указать список разрешенных IP-адресов,
разделяя их пробелами или запятыми.
Разрешить автоматический вход.
При обнаружении соответствия IP-адреса администратора и необходимого cookie
есть возможность пропустить страницу авторизации и перейти сразу к
администрации Zebra. Этот режим рекомендуется включать только в том случае,
если вы имеете полную гарантию того, что с вашего компьютера никто более не
будет пытаться администрировать сайт. Отметим, что указание
полного
IP-адреса в данном случае обязательно.
Примечание. Если включен
автоматический вход, но вам необходимо зайти в администрирование под другим
логином, в строке адреса в качестве параметра надо указать ключ
autoadmin=off, то есть:
http://www.yourhost.com/cgi-bin/ze.cgi?autoadmin=off
Включить права. Предписывает
включить выбранные права администратора в список прав текущего.
Исключить права. Предписывает
исключить выбранные права из списка прав текущего администратора. Здесь также
можно посмотреть список текущих прав доступа администратора.
Элемент «Полный доступ» задействует
неограниченный доступ к администрированию всех ресурсов Zebra. В системе должен
иметься хотя бы один администратор с полным доступом. Это обуславливается тем,
что доступ к некоторым разделам администрирования разрешается только
администраторам с полным доступом. Если по каким-то причинам, либо случайно
такой администратор был из системы удален, восстановить его штатными средствами
через администрирование невозможно (в частности, по соображениям безопасности).
В таком случае воспользуйтесь методом, описанным в разделе
«FAQ».
3.7. Резервирование и обновление
В данном разделе дается возможность изменить регистрацию компонентов
Zebra, а также осуществить резервное копирование баз, используемых Zebra, с
предварительным переводом их в текстовый формат. Резервированные базы далее
можно получить, скачав их по обычной http-ссылке, которая будет специально
сообщена Zebra при успешном резервировании.
Перед тем, как подключить модуль,
необходимо корректно организовать расположение
новых (или старых) файлов на сервере, чтобы Zebra было понятно, что и откуда
брать. Файлы
*.cgi (а также файл
zebra.ini при обновлении версии
Zebra) располагаются в каталоге скриптов, файлы
*.inc в каталоге
data. При этом им надо бы
присвоить соответствующие права доступа, дабы скрипт был исполнябелен
(
rwxr-xr-x, либо
0755), а ресурс читабелен и
записывабелен (
rw-rw-rw- или
0666 по максимуму,
rw-r--r-- или
0644 в большинстве случаев).
При аккуратном исполнении данных
предписаний модуль будет подключен либо отключен. Во случае успеха, как
правило, эпопея на этом заканчивается. Иначе следует долгий процесс
изучения документации нового модуля, его настройки и попытки
максимально притереть к прежним, уже давно используемым ресурсам и модулям
Zebra. Описание проблем и возможных путей решения обычно находятся в прилагаемых
к модулю файлах документации.
Кроме того, возможно обновление баз. Некоторые
ресурсы Zebra поставляются в виде подключаемых файлов, имеющих расширение
inc или
ini. Такие файлы достаточно положить в каталог
data на сервере, после чего через данный раздел их подключить.
Однако в некоторых случаях нужно быть предельно осторожными: формат
подключаемых файлов предусматривает такой вариант, когда все имеющиеся значения
будут без вопросов заменены другими. Поэтому не пользуйтесь подключаемыми
ресурсами, полученными из источников, в которых вы не уверены.
В Zebra предусмотрен механизм автоматического
подключения ресурсов. Для его задействования подключаемый файл должен быть
наименован
zauto.inc и положен в директорию
data на
сервере. Также, файл
zebra.ini может быть размещен в cgi-каталоге. Запуск
после этого основного модуля администрирования
ze.cgi осуществит автоматическое подключение ресурса, а сам файл
будет удален.
Механизм резервирования и обновления,
реализованный в Zebra, а также довольно простой формат файла ресурсов позволяет
легко осуществлять обмен данными между пользователями Zebra. Достаточно
сгенерировать резервный файл, взять из него нужные строки и, придав ему
какое-то осмысленное наименование и подобающе прокомментировав, послать
знакомому. В частности, отдельно документация к Zebra распространяется именно
таким образом. Кроме того, автоматическая регистрация модулей также может
осуществляться за счет подключения соответствующих ресурсов.
Более подробно формат подключаемого файла
ресурсов рассматривается в разделе
«Руководство по
API».
В разделе также присутствует секция «Дополнительные действия»,
в которой перечислены расширенные операции резервирования и обновления. При
активировании любой из них все остальные операции раздела игнорируются. Возможны
следующие варианты:
Проверить обновление, при этом экземпляр Zebra обращается на
сервер разработчика и запрашивает информацию о последней версии Zebra.
Скачать и установить обновление, при этом Zebra обращается
на сервер разработчика и запрашивает файлы обновления. Администратору нет необходимости
вручную скачивать файлы и размещать их на сервере вместо старых. Обновление скачивается
и устанавливается средствами Zebra. При этом отслеживаются возможные сбои, поэтому
результат достаточно надежен. Следует отметить, что обновлению подлежат все инсталлированные
на сайте модули (если они были обновлены), легально зарегистрированные пользователем.
Свернуть Zebra, предписывает свернуть все базы Zebra, упаковать
их в один файл и снабдить скриптом распаковки, который позволит с минимальными усилиями
развернуть инсталляцию на новом месте. Операция может быть крайне полезна при, например,
переезде сайта на новый сервер.
Деинсталлировать Zebra, предписывает конвертировать в портируемый
текст наработанную за время работы Zebra информацию, после чего удалить программные модули и
базы экземпляра Zebra.
3.8. Сетевые параметры
Zebra способна самостоятельно обращаться к удаленным ресурсам
(сайтам), осуществлять почтовые отправления и прием почты и т.д. Раздел
администрирования «Сетевые параметры» позволяет настроить
некоторые из особенностей сетевого взаимодействия служб Zebra.
Параметры CGI для Zebra
Максимально допустимый размер входного потока, К. Ограничивает размер
поступающего от пользователя потока данных. Например, если он захочет опубликовать на сайте
свою полную биографию на шестьсот страниц, это сделать не удастся. Данное ограничение не
распространяется на административные действия.
Запретить загрузку файлов. Устанавливает запрет на загрузку файлов
(текстовых или бинарных) на сайт. Ограничение не распространяется на административные действия.
Разрешенные расширения файлов для загрузки. Указывает список расширений
файлов, которые пользователю можно загружать на сервер. Например,
gif,jpg,jpeg,png
перечисляет используемые в Internet графические форматы, с применением одного из
которых пользователь может опубликовать на сайте свою фотографию.
Установить срок кэширования страниц для браузера, часов. Указывает браузеру,
сколько времени полученная им страница будет храниться в кэше до следующего обязательного
запроса на ее обновление.
Параметры виртуального браузера
Для получения удаленного
ресурса (страницы с какого-либо сайта, файла или какой-либо другой информации)
Zebra создает виртуального клиента, обладающего некоторыми характеристиками,
необходимыми для того, чтобы запрошенный им ресурс был успешно получен.
Метод создания агента. Zebra может использовать один из двух методов
для создания виртуального клиента. Метод IO подразумевает прямое обращение к портам
с использованием библиотеки IO::Socket. Метод LWP использует библиотеку lib-www-perl.
В случае, если возможны оба варианта, рекомендуется принять LWP, поскольку эта библиотека
проработана больше, нежели доступ через IO, который оформляется собственными средствами Zebra.
Список возможных значений USER-AGENT. Идентификаторы клиента, которые
может посылать виртуальный браузер на сервер, содержащий запрашиваемый ресурс. Некоторые
серверы могут отказывать в ответе, если значение идентификатора не содержится
в списке разрешенных к обработке на этом сервере. Количество значений
в параметре не ограничено, каждая строка представляет собой отдельный идентификатор.
Время ожидания ответа, с. Время, которое надлежит ожидать
виртуальному браузеру, прежде чем сервер, от которого ожидается ответ, будет сочтен
недоступным.
Параметры почтового клиента
Для многих служб Zebra
желательно присутствие возможности отправления электронного письма. Таким
образом может, например, осуществляться срочная связь с администратором
сайта, либо уведомление о неких событиях, принципиальных для внешних модулей,
либо удаленное администрирование через e-mail.
Для этого случая в Zebra встроен почтовый клиент, занимающийся отправлением
и получением почты.
Метод отправления писем. Способ, которым в Zebra
предписывается осуществлять почтовые отправления. Здесь возможны несколько
вариантов. «Отключено» почтовый клиент не работает
в режиме отправления. «Запись в файл (отладка)» тестовый режим,
если требуется проверить, осуществляется ли вообще формирование письма
при проверяемом событии. В таком случае все отправляемые письма сохраняются
в файл, название которого формируется по шаблону
zUSERKEYmail.log,
где
USERKEY ключ индивидуализации данной установленной копии
Zebra. Этот файл располагается в каталоге
data.
«Внутренний механизм» реализует прямой доступ к
портам и требует наличия в конфигурации Perl библиотеки IO::Socket. При
отсутствии этой библиотеки письма отправляться не будут. Если внутренний
метод работает, то необходимо также указание адреса SMTP-сервера, посредством
которого будут отправляться письма.
«Посредством SENDMAIL» и «Посредством MAIL»
методы, использующие запуск системных утилит работы с почтой и передачу
им отправляемых писем для обработки. Обычно Zebra сама определяет их расположение,
однако есть возможность, что это ей сделать не удастся. В таком случае
потребуется явным образом указать путь к используемой программе. При этом
необходимо соблюдать соответствие в выбранном методе, поскольку внутренние
форматы передачи данных для утилит mail и sendmail отличаются.
Примечание. Если есть возможность выбора
mail, sendmail или внутренний метод, рекомендуется выбрать sendmail,
поскольку данная утилита позволяет гибче конфигурировать тело письма, нежели
mail, и работает надежнее внутреннего метода.
Тест на адрес. Сразу после изменения параметров почтового
клиента можно протестировать его работоспособность, указав в предлагаемом
поле адрес, на который будет сделана попытка отослать тестовое письмо.
Примечание. Тест на адрес работает только с сохраненными
параметрами. То есть, если вы измените метод отправки письма, и тут же отправите
тестовое письмо, оно будет отправлено с использованием предыдущей конфигурации
почтового клиента. Для того, чтобы действительно протестировать конфигурацию,
необходимо ее сначала сохранить, и только потом отправлять тестовое письмо.
явный путь к SENDMAIL или MAIL. Указывается полный путь
к утилите, реализующей в системе почтовые функции. Например,
/usr/sbin/sendmail,
/usr/bin/mail,
/sbin/sendmail и т. д.
SMTP-сервер. Указывается адрес SMTP сервера,
с которым устанавливается связь при отправлении почты внутренним методом.
Тип отправляемого письма по умолчанию. Можно задать три типа отправляемых писем.
При «text/html» в служебные поля формируемого для отправки письма
вставляется поле, благодаря которому почтовый клиент получателя будет воспринимать
письмо как html-страницу и соответственно отображать. При значении «text/plain»
добавляется признак обычного текста. В случае «авто» Zebra сама
по некоторым признакам определяет, в каком формате отправлять письмо.
Формировать в кодировке. Перекодирует заголовок и содержимое
письма соответственно выбранной кодовой странице (по умолчанию используется
windows-1251). Кодовые страницы хранятся в базе настроек Zebra. Способ
добавления поддержки других кодовых страниц описан в
«Руководстве по АПИ».
Сохранять отправляемые письма. Позволяет сохранять все исходящие
письма в системном почтовом ящике
Outbox.
Разрешить многопоточную отправку писем. Позволяет Zebra
создавать параллельный процесс для каждого отправляемого письма, что
дает возможность основному потоку не ожидать завершения отправки писем,
а сразу переходить к другим задачам. Это может значительно ускорить
возвращение клиенту запрошенной информации.
Примечание. Данный параметр имеет смысл
в операционных системах типа Unix и может приводить к аварийному
завершению Zebra в ОС семейства Windows.
Метод создания клиента. Указывается метод, с использованием которого
будут осуществляться запросы к почтовым аккаунтам. Возможны два варианта. Метод IO
реализован с применением библиотеки IO::Socket и предусматривает прямое обращение к портам.
Метод LibNet требует наличие библиотеки LibNET и оформляет запросы к почтовым аккаунтам
для этой библиотеки. Если существует выбор, рекомендуется принять LibNet.
Количество POP3-аккаунтов. Zebra может с заданной периодичностью
опрашивать некоторое (теоретически неограниченное) количество почтовых
ящиков на предмет наличия в них писем, и в случае обнаружения таковых
получать и осуществлять некоторые действия соответственно настройкам.
Данным параметром задается количество ящиков, которые Zebra будет проверять.
POP3-сервер. Задается адрес POP3-сервера, на котором
размещается проверяемый ящик.
пользователь. Имя пользователя, соответствующее ящику (наименование
почтового ящика).
пароль. Пароль доступа к содержимому почтового ящика.
особая обработка писем. Zebra предполагает возможность существования
специальных (командных) ящиков, поступающие в которые письма обрабатываются особым образом.
По наличию ключевых слов в таких письмах устанавливается, какое действие следует произвести
Zebra: модерацию на форуме, публикацию ответа, удаление регистрации пользователя, переиндексацию
всех ресурсов и т.д.
расписание проверки. Указывается расписание, согласно которому
будет производиться проверка наличия новых писем в почтовом ящике.
Кнопка «Связаться» инициирует немедленный контакт с почтовым ящиком
и получение с него писем. При этом, если ящик обозначен как особо обрабатываемый,
письма проверяются на наличие команд.
Примечание. Для каждого почтового ящика необходимо
указать индивидуальные параметры подключения и обработки. Для хранения полученных писем
создаются собственные почтовые ящики Zebra, в которых в дальнейшем можно эти
письма просмотреть и при необходимости удалить. Доступ к содержимому почтовых
ящиков можно получить через меню, доступное в верхней части раздела
«Сетевые параметры».
Системные письма
Подраздел администрирования «Системные письма»
позволяет определить шаблоны писем, которые Zebra отправляет соответственно
назначенным событиям. Письмам свойственны идентификатор, имя и адрес
отправителя (имя и адрес получателя устанавливаются автоматически),
а также тема и тело письма, которые представляют собой обычное описание
страницы, составленное по обычным правилам составления описаний Zebra.
Кроме того, письму требуется назначить комментарий, который будет
его характеризовать.
3.9. Параметры АС
Ассоциативная сеть данных одна из базовых технологий,
включенных в Zebra. Она представляет собой особый способ организации и
хранения информации, близкий по идеологии к принципам построения
семантических сетей. Поддержка ассоциативной сети реализована посредством
библиотеки DAN, к которой в Zebra разработано несколько средств управления
и доступа. В частности, форумный модуль Zebra Forum (см.
«Работа с Zebra Forum») является
надстройкой высокого уровня над DAN и выполняет высокоуровневые операции,
предназначенные для организации работы онлайновых средств обратной связи.
Административный модуль
Danipulator реализует
доступ и управление данными в базах АС на среднем уровне, а библиотека
расширений модуля позволяет получить данные в сформатированном согласно
установленным форматам виде.
Подробнее с теоретическими выкладками по организации и
функционированию АС можно ознакомиться
здесь
или
здесь. Индивидуально
библиотека DAN в живом виде находится
здесь.
АС работает при наличии некоторой модели данных, согласно которой
осуществляется распределение и связывание информации в базе. Zebra предоставляет
интерфейс для модификации и управления моделью данных, однако следует иметь в виду,
что модификация моделей данных, поставляемых с конечными приложениями (например, с
Zebra Forum, может привести к некорректному функционированию
этих приложений, поскольку они разработаны с учетом заданных особенностей
соответствующих моделей данных. Поэтому полноценное управление целесообразно
осуществлять только с теми моделями АС, которые разрабатываются непосредственно
для решения конкретных поставленных задач.
Поскольку таким образом разработка и модификация моделей данных АС
оказывается вплотную примыкающей к вопросу разработки внутренних или внешних
модулей для самой Zebra (во всяком случае, она затрагивает уже непосредственно
программирование с привлечением API), то более подробно вопросы управления
моделями данных АС рассматриваются в разделе
«Руководство
по API».
3.10. Параметры индексации
Часто перед пользователем встает задача найти среди
множества ресурсов один или несколько, в которых упоминается одно
или несколько заданных слов. Если файлы хранятся на жестком диске пользователя,
то такая задача не слишком пугает, поскольку современная техника позволяет
достаточно быстро прочесать солидное количество файлов с учетом контекстного
поиска в них. Проблема возникает только при очень большом объеме перерабатываемой
информации. Однако когда требуется найти один ресурс на сайте с большим коичеством
страниц, такая задача становится гораздо более сложной. Один из способов
ее решения для пользователя создание полной копии сайта на собственном
диске и дальнейший поиск в ней. Но такой подход не всегда реализуем,
особенно в том случае, если контент сайта динамический или же предусматривает
специальную защиту от подобных массовых запросов. Тогда вебмастер должен
сам позаботиться об удовлетворении таких потребностей пользователя.
Существуют два основных подхода к поиску ресурсов, удовлетворяющих
условиям поиска. Первый заключается в последовательном переборе всех имеющихся
ресурсов и проверка каждого на удовлетворение его этим условиям. Данный подход
очень прост и эффективен, если имеется несколько десятков небольших файлов,
однако крайне непродуктивен, если их требуется обработать сотни и тысячи.
Второй подход заключается в предварительном индексировании всех
ресурсов, по которым предполагается совершать поиск. При таком индексировании
создается образ ресурса, описание, полный путь для прямого доступа и регистрируется
список ключевых слов, полученный в результате морфологического разбора содержимого файла.
При поиске такому же морфологическому разбору подвергается переданный запрос, после чего
по сопоставленным ключевым словам строится список релевантных ресурсов. Далее этот список
можно уменьшить путем отбора повторяющихся или не удовлетворяющих дополнительным критериям
поиска элементов, после чего список форматируется в удобный для восприятия вид и возвращается
пользователю. Данный подход требует предварительных затрат на индексацию всех ресурсов,
однако это с лихвой окупается скоростью поиска, совершенно не сравнимой с первым способом.
По этому принципу строится функционирование всех поисковых машин (начиная от поисковых систем
Интернета и заканчивая системой поиска в Windows XP).
Zebra применяет второй вариант системы поиска, что позволяет с минимальными
текущими затратами предоставлять пользователю полный сервис поиска. Индексация ресурсов
происходит на этапе сохранения, либо в процессе принудительной переиндексации. Индексы
сохраняются в отдельной базе данных и не влияют на работу остальных модулей Zebra.
Включить индексацию. Можно на глобальном уровне отключить индексацию,
что приведет к выключению всех систем поиска Zebra, основанных на индексах.
Индексировать. Задается один из нескольких глобальных типов индексирования.
Вариант «По ключевым словам ресурса» анализирует индексируемый ресурс на наличие
специальных тегов, указывающих ключевые слова (например,
<meta http-equiv="keywords"
content="keyword1, Keyword2, KeyWord3, ...">), либо по непосредственно
переданному списку таких слов. Вариант «По общим ключевым словам»
сопоставляет наличие общих ключевых слов (см. ниже) с индексируемым ресурсом, и
индексирует только по тем ключевым словам, которые в нем обнаружены. Вариант
«Анализировать ресурс» предписывает проводить полный
морфологический разбор индексируемого ресурса. «Автоматически»
предусматривает выбор одного из перечисленных способов самой Zebra на основании
ряда критериев.
Общие ключевые слова. Список ключевых слов, которые будут использоваться
при анализе ресурсов «По общим ключевым словам». Слова в списке могут быть
указаны в своей обычной форме, поскольку при проведении анализа они подвергаются морфологическому
разбору вместе с самим индексируемым ресурсом.
Игнорировать слова. Приводится список ключевых слов, по которым не требуется
индексировать ресурс. То есть, если в ресурсе обнаружено слово, соответствующее одному из
указанных в данном списке, то они сопоставлены не будут. Как следствие, поиск по таким словам
нерезультативен. В даном списке слова также можно указывать в общеупотребительной форме.
Игнорировать слова короче, символов. Во избежание индексирования союзов,
междометий и прочих не характеризующих конкретный ресурс слов можно ограничить минимальную
длину индексируемых слов.
Игнорировать слова длиннее, символов. Аналогично предыдущему пункту, но
максимальную длину.
Индексировать числа. Можно ограничить индексацию по числам, если они
не играют существенную роль в наполнении ресурса.
Сводить к нижнему регистру. При включенном данном параметре все слова списка,
полученного после морфологического анализа ресурса, сводятся к нижнему регистру букв.
При обработке запроса на поиск также осуществляется сведение запроса к нижнему регистру,
что позволяет не учитывать разницу регистров в проверяемых ресурсах и запросе. В противном
случае «Небо» и «небо» воспринимаются как разные слова, и поиск
окажется нерезультативен.
3.11. События
В Zebra предусмотрена регистрация различных событий, происходящих
в процессе ее работы. Это может быть создание или удаление подкаталога в
окружении Zebra, регистрация пользователя, неверно введенный пароль и т.д.
В зависимости от выбранного уровня детализации могут регистрироваться
события в широком диапазоне привилегий от самых незначительных
до кардинально меняющих всю работу системы. Регистрация событий осуществляется
в обычный текстовый файл в каталог
data, имя которого формируется
по следующему шаблону:
zUSERKEYlog.log, где
USERKEY
ключ индивидуализации данной копии Zebra.
При проявлении серьезного сбоя,
необходимости выявить злостных нарушителей парольного режима, выяснения
личности инициировавшего обвал системы администратора и прочих событиях,
регистрируемых Zebra, можно последовательно просмотреть файл регистрации
событий и проанализировать ход событий. Кроме того, Zebra предоставляет
собственный простой интерфейс к анализу событий, позволяющий отфильтровать
их по нескольким критериям, расположить в восходящем или нисходящем хронологическом
порядках и т.д.
Примечание. В Zebra ведется еще один файл событий,
в который перенаправляется вывод ошибок на уровне команд операционной системы.
Иногда ошибки, информация о которых не отображается посредством Zebra или самого
сервера, можно выявить анализом этого файла.
Его наименование формируется по шаблону zUSERKEYerr.log. Файл
доступен для просмотра только непосредственно, интерфейсов к его изучению
Zebra не предоставляет. В целом, в него регистрируется каждый запуск Zebra
(в том числе административные вызовы) с точностью до секунды.
3.12. О Zebra
В разделе сообщается информация о текущей
версии и копии Zebra о модулях, зарегистрированных в ней, о
регистрационной записи, какие-то дополнительные вещи. Если Zebra не
зарегистрирована, отсюда же можно перейти к процессу регистрации. В целом, этот
раздел в большей степени информативен, нежели административен. Его сокращенная
версия выдается на запрос к любому из модулей с единственным параметром
командной строки
about, например:
http://www.yourhost.com/cgi-bin/zs.cgi?about
3.13. Системные параметры
Позволяет получить описания страниц и
некоторых элементов, являющихся техническими ресурсами Zebra и определяющими
вид, наполнение и содержание административных страниц. Разделяемость данных
ресурсов обеспечивается только на уровне языка (
locale). Описания
этих страниц можно, в частности, брать в качестве примера для создания описаний
собственных страниц, поскольку в системных ресурсах Zebra использованы
практически все приемы, рекомендуемые к применению в работе с сайтом.
Внимание! Модификация административных ресурсов
может привести к нарушению работоспособности административных разделов Zebra и, как следствие,
серьезным ошибкам в работе Zebra.
Кроме того, в разделе доступны к изменению еще несколько важных параметров
функционирования Zebra.
Установить глобальный счетчик сайта. Позволяет принудительно установить
общий счетчик запросов, произведенных к Zebra с момента инсталляции.
Восстановить глобальный счетчик сайта. Осуществляет пересчет обращений
к Zebra, основываясь на данных, предоставляемых модулями.
Временно отключить работу Zebra. Переключатель оказывает действие,
обратное переключателю «Включить работу Zebra» (см.
«Основные параметры»).
Включить кэширование данных. Zebra на каждый запрос выполняет до нескольких
сотен обращений к базам данных, при этом часто запрашиваются одни и те же значения. Для
снижения расходов на подобные повторные запросы можно включить кэширование, при котором
уже считанная информация запоминается во временном буфере, и при повторном обращении
берется из него, исключая лишний запрос к базе данных. Включать кэширование имеет смысл
в том случае, если оно не функционирует на уровне операционной системы.
SSI-инструкция виртуальной вставки,
SSI-инструкция
прямой вставки. В некоторых реализациях http-серверов могут быть
переопределен синтаксис SSI, что способно привести к ошибкам при применении
стандартных
<!--#include virtual="..."--> и
<!--#include file="..."-->. Для таких случаев
в Zebra предусмотрена настройка SSI-инструкций.
Включить оптимизацию потока при выводе. Для уменьшения размера возвращаемого
пользователю контента Zebra может оптимизировать конечный ресурс по нескольким критериям.
оптимизация пробелов, удаляются лишние пробелы, пустые строки,
многократные табуляции и т.д.;
удаление комментариев, удаляются комментарии; при этом учитывается,
что внутри комментария может располагаться код встроенного скрипта (например, JavaScript),
и если это действительно так, комментарий не удаляется (однако система распознавания не всегда
может работать корректно, поэтому в случае, если в ваших ресурсах активно используются
скриптовые языки, данный пункт лучше отключать);
tgz-сжатие потока, предписывает перед отправлением конечного контента
пользователю сжать его в соответствии с форматом TGZ. Современные браузеры понимают информацию,
полученную в таком формате, и прозрачно для пользователя распаковывают ее, демонстрируя в
конечном итоге обычный html-ресурс. При этом возможен выигрыш в объеме передаваемых данных
и, соответственно, во времени, затраченном на получение ресурса, до нескольких раз.
(Данная возможность пока не реализована.)
Формат сжатия данных. Влияет на выбор способа архивирования файлов
при резервировании баз.
Комадная строка архиватора. Если Zebra не находит утилиту для сжатия
файлов способом, указанным в предыдущем пункте, можно принудительно задать командную строку
вызова архиватора. При этом следует придерживаться следующего формата:
command [options] "$archive" @forarc
Здесь
command полный или относительный путь к исполняемому файлу архиватора,
$archive ключевое слово для наименования целевого файла архива,
@forarc ключевое слово для перечисления включаемых в архив файлов,
options дополнительные опции архиватора. Обратите внимание, что
$archive и
@forarc должны присутствовать в команде именно в таком
виде, поскольку они особо обрабатываются Zebra при формировании конечной команды. Например,
команда по умолчанию для архиватора zip выглядит следующим образом:
zip -j -m -q -9 "$archive" @forarc
4. Основной список int
Именованный список
int является
важнейшим элементом Zebra, поскольку содержит динамически изменяемые данные,
соответствующие ключам, интерполируемым в описаниях (подробнее о ключах,
записях, условных инструкциях и проч. см.
«Работа с Zebra Site. Описание
страницы»), и проходит белою ниткою сквозь всю структуру Zebra.
Составляющие списка можно поделить на две
логические части контекстные и постоянные. В целом, конечно, все его
значения контекстны, однако, как правило, некоторые определяются в самом
начале, да так и остаются до завершения сеанса работы Zebra. Особенность
контекстных значений в том, что они могут быть определены только в
особых случаях, ради которых и существуют. В остальных
считаются несуществующими. Если этим значениям сопоставлены условные
инструкции, конечное содержимое контента может неузнаваемо измениться.
Далее перечислены значения списка
int, входящие в постоянную составляющую. Описания контекстных
составляющих приводятся контекстно же то есть в документации конкретных
модулей и/или процедур, их использующих.
Первым приводится наименование параметра, далее
идет его описание. Применение значений в описаниях производится цитированием
наименования с добавлением перед ним символа доллара
$.
Системные параметры
sitename название сайта
sitehost базовый адрес сайта
dircgi виртуальный путь к cgi-каталогу сайта
dirsite виртуальный путь к html-каталогу сайта
dirbin виртуальный путь к каталогу изображений
begbody шапка страницы
endbody подвал страницы
lang явная установка языка, заданная через адресную строку
prof явная установка профиля, заданная через адресную строку
langprof фрагмент для дальнейшей передачи установок языка и профиля через адресную строку
current наименование исполняемого файла активного модуля
| |
Параметры текущей даты и времени
date шаблон даты в установленном формате
sec секунды
min минуты
hour часы
day день месяца
wday название дня недели
month месяц
wmonth название месяца
year короткое обозначение года
fullyear полное обозначение года
|