Как стать автором
Обновить

Несколько сайтов на одном движке CakePHP

Время на прочтение2 мин
Количество просмотров1.2K
И так. Объясняю популярно. Ибо сам пока разобрался потратил ни 10 минут. Делаем на примере условного сайта "Travel".
  • Движок CakePHP [cakephp/cake и cakephp/vendors] я перенёс(!) в /var/www/cake.core (/var/www у меня apache wwwroot) — то есть, этот движок будет использоваться для всех проектов и не будет меняться до следующей версии CakePHP.
  • Содержимое cakephp/app/webroot переносим(!) в /var/www/travel (в этой папке у нас будут все css, images, js, uploads и т.д.)
  • Всё из cakephp/app (там уже нет webroot, мы его прошлым шагом от туда перенесли) переносим(!) в /var/www/travel.app (там у нас будет вся логика и темплейты. MVC то есть).




Конфигурация.


Тут всё просто (как оказалось). Открываем файл /var/www/travel/index.php и редактируем следующий блок (комментарии удалены):
if (!defined('ROOT')) {
define('ROOT', dirname(dirname(dirname(__FILE__))));
}

if (!defined('APP_DIR')) {
define('APP_DIR', basename(dirname(dirname(__FILE__))));
}

if (!defined('CAKE_CORE_INCLUDE_PATH')) {
define('CAKE_CORE_INCLUDE_PATH', ROOT);
}

что бы он выглядел вот так:
// Тут просто указываем полный(!) путь до apache wwwroot
if (!defined('ROOT')) {
define('ROOT', DS . 'var' . DS . 'www');
}

// Относительны(!) путь к логике
if (!defined('APP_DIR')) {
define('APP_DIR', 'travel.app');
}

// Полный(!) путь до нашего движка
if (!defined('CAKE_CORE_INCLUDE_PATH')) {
define('CAKE_CORE_INCLUDE_PATH', DS . 'var' . DS . 'www' . DS . 'cake.core');
}


Теперь в броузере пишем localhost/travel и видим тестовый экран CakePHP, в котором нам рассказывают что у нас всё подключено и работает.

Соответственно для новых сайтов, делаем копии /travel и /travel.app (или всё с самого начала из «чистого» cakePHP), настраиваем /travel/index.php и радуемся полученному результату.

P.S. Да, да, это в принципе перевод куска мануала по cakePHP, но либо я тупой, либо написано там криво, но мне пришлось слегка помучиться что бы получить то что получилось. И да, cakePHP я изучаю всего несколько часов, так что не судите строго.
Кстати, если тут есть опытные или начинающие пользователи cakePHP, то я бы с большим удовольствием установил с вами контакт, ибо вместе и проще и быстрее.
Теги:
Хабы:
Всего голосов 9: ↑5 и ↓4+1
Комментарии7

Публикации

Истории

Работа

PHP программист
187 вакансий

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань