Eludia.php
Изначально Eludia-проекты реализовались на платформе Linux / Apache / Perl. Это обеспечивало большую эффективность разработки и простоту поддержки. Однако на определённом этапе нам пришлось отказаться от ряда заказов в связи с ограниченным распространением нашей излюбленной платформы. Тогда возникла идея перевести Eludia на PHP и при этом расширить круг потенциальных заказчиков сразу двумя способами:
- снизить стоимость внедрения, позволив размещать системы на дешёвом PHP-хостинге;
- преодолеть неадекватность портации mod_perl под Windows, используя родной ISAPI PHP модуль под IIS.
Технически задача портации решена до стадии гамма-версии. Во всяком случае, титульная часть нашего сайта http://eludia.ru (и front-, и back-end) использует Eludia.php.
Тем не менее, коммерческого использования Eludia.php пока не нашла по ряду объективных причин:
- серьёзные заказчики не рассматривают дешёвый публичный хостинг как вариант размешения своих корпоративных информационных систем;
- для простых стандартных публичных сайтов существует большое число хорошо известных конкурирующих открытых продуктов (сами мы, например, используем MediaWiki);
- в 2007 году по инициативе Microsoft был разработан FastCGI-модуль для IIS. Основное его предназначение — запуск PHP-скриптов, однако он вполне может использоваться с интерпретатором любого другого динамического языка программирования, в частности, Perl5. Что позволило нам использовать Eludia.pm в комбинации с IIS.
Таким образом, в настоящее время проект активно не развивается, хотя определённые перспективы у него, возможно, имеются. Мы приглашаем всех желающих ознакомиться с описанием дистрибутива Eludia.php, использовать любые его составляющие по своему разумению и обращаться к нам с любыми вопросами на эту тему.
Системные требования
Eludia.php может использоваться совместно с любым WEB-сервером, который так или иначе поддерживает формирование ответов при помощи языка PHP, будь то встраивание интерпретатора в сам сервер или использование внешнего процесса через интерфейс fastCGI или хотя бы CGI (что не рекомендуется по соображениям эффективности).
Для функционирования приложения на базе Eludia.php необходима реляционная СУБД. В настоящее время поддерживается только MySQL версии 4.0 и выше. Если вам необходимо использовать иную реляционную СУБД, доступную из PHP, то разработка соответствующего переходника для Eludia.php — дело одного рабочего дня.
Текущая версия Eludia.php функционирует на базе PHP 5.2.4 и 5.2.10. Ядро должно быть совместимо со всеми релизами 4.х и 5.х, хотя презентационный модуль для front-end сайта, входящий в дистрибутив, требует PHP 5.
Требования к операционной системе сервера ограничиваются возможностью установить вышеперечисленное ПО: WEB-сервер и Perl5 с доступом к выбранной СУБД. Таким образом, можно использовать любую UNIX-подобную ОС или Windows семейства NT.
Устройство
Обработчики
В Eludia.php воспроизводится понятие "обработчика запроса", обеспечиваемое в Apache / mod_perl командами SetHandler / PerlHandler и недоступное на PHP-хостинге, в особенности без права редактирования httpd.conf. Достигается это прописыванием
DirectoryIndex index.php ErrorDocument 404 /index.php
в файл .htaccess корневой директории. Таким образом, все HTTP-запросы, приходящие на хост обрабатываются в index.php. Если требуется переопределить обработчик для какой-либо поддиректории, достаточно разместить там локальный .htaccess со строкой
DirectoryIndex index.php
Смысл обработчика-файла заключается только в том, чтобы загрузить и запустить обработчик-функцию.