Если вам действительно нужны 2 независимых приложения, вы можете настроить это с помощью одной или двух модификаций ядра codeigniter, в зависимости от того, используете ли вы PHP4 или 5.
Мы сделали это после этой вики-страницы CI , и она отлично работает, мы делимся моделями, библиотеками, конфигурацией.
По сути, вы получили проектную организацию, подобную этой:
/application/
/common/<similar to application directory, but used for shared libs/helper/models/configs files>
/frontend/<similar to application directory>
/backend/<similar to application directory>
/system/
Переопределяя загрузчики, вы можете реализовать приоритет загрузки, если одна и та же библиотека lib / config присутствует для общих классов или для приложений). Кроме того, вы можете перемещать весь общий код (контроллеры, определенный класс маршрутизации и т. Д.) И сохранять в своих приложениях только определенные для приложения перегрузки.
В итоге у вас есть два Front Controllers (в основном идентичные файлу index.php), по одному для каждого приложения, и вы можете фильтровать посетителей с помощью перезаписи URL, определенного субдомена и т. Д.
Если вы ориентируетесь на серверы с PHP4, я открыл эту ветку на форумах codeigniter, чтобы посмотреть, что нужно изменить в основных классах, чтобы заставить его работать (без изменений при загрузке)
Еще одна жизнеспособная альтернатива, но я ее еще не использовал, - это HMVC организация