Energine

Материал из свободной русской энциклопедии «Традиция»
Перейти к навигации Перейти к поиску
Energine


Операционная система:
Кросс-платформенное программное обеспечение






Текущая версия:
2.2
Дата выхода текущей версии:
11 апреля 2008 г.



Лицензия:
GNU LGPL

Energineсвободная система управления сайтом (CMS), базирующаяся на одноимённом каркасе для разработки (CMF), написанном на языке PHP 5-й версии. Для хранения данных используется СУБД MySQL версии 4. Для преобразования данных используются технологии XML и XSLT. Клиентская часть написана на языке JavaScript, с использованием библиотеки Mootools.

Идеология[править | править код]

Рассмотрим подробнее основные принципы работы. Существует единственная точка входа в систему — основной контроллер, на который переадресовываются все запросы. Переадресация происходит с помощью модуля mod_rewrite (англ.) сервера Apache. Контроллер разбирает строку URL, определяя какой из страниц она соответствует. Описание всех страниц (разделов) сайта хранится в БД. Затем определяется шаблон, по которому создана эта страница.

Шаблон страницы — XML описание перечня компонентов, из которых состоит страница. Компонент — это РНР объект, реализующий определённую функциональность (вывод меню, формы авторизации и т. д.) и выводящий результат своей работы в виде XML узла.

Определив какие именно компоненты находятся на запрошенной странице, контроллер запускает их на выполнение, собирая результаты их работы в единое XML дерево.

Результирующее дерево содержит полное описание страницы в XML формате. Внешний вид страницы описан в XSLT шаблонах. После исполнения XSL‐преобразования мы получаем HTML код страницы, который и передаётся браузеру.

Системные требования[править | править код]

  • OC: GNU/Linux, FreeBSD, Microsoft Windows и Windows NT
  • Веб сервер: Apache 2.
    • Для правильной работы необходим mod_rewrite.
    • Для директории в которую устанавливается проект необходимы «AllowOverride Options» или «AllowOverride All» привилегии.
  • PHP: Версия 5 и выше, может быть установлен как модуль Apache или как cgi.
    • Расширения РНР:
      • DOM
      • JSON (в PHP 5.2.1 и выше — идёт по умолчанию, для младших версий устанавливается как PECL расширение.)[1]
      • PDO
      • pdo_mysql
      • session
      • SimpleXML
      • Tidy
      • xsl
  • MYSQL: Версия 4.х или 5.x с включённой поддержкой InnoDB

Ссылки[править | править код]

Примечания[править | править код]