Home PageКаталог Изменения НовыеКомментарии Пользователи Регистрация
CakePHP: Manual/Developing/Installation ...

Установка


Установка CakePHP может быть и сногсшибательно проста, как простое копирование в вашу корневую директорию на веб-сервере, так и максимально гибка и настраиваема, как вы пожелаете. В этом разделе мы охватим три варианта установки Cake: для программиста, для одного сайта и расширенную установку.

Установка для программиста


Просто поместите распакованный архив с CakePHP внутрь вашей корневой директории (webroot). Например, если для вебсервера является корнем путь /var/www/html, то файлы Cake должны располагаться таким образом:


Чтобы увидеть как работает Cake, наберите в браузере http://www.example.com/cake/.

Установка для работы одного сайта


Чтобы установить CakePHP таким образом — вам необходимо иметь права на изменение корневой веб-директории вашего сервера. Эти изменения приведут к тому что весь ваш сайт будет работать как единое CakePHP приложение.


При такой установке используется следующая схема расположения файлов:


Если ваше приложение устанавливается на сервере Apache, то директиву DocumentRoot необходимо установить следующим образом:

DocumentRoot /path_to_cake_install/app/webroot


Чтобы увидеть как работает Cake, наберите в браузере http://www.example.com.

Расширенная установка


Может возникнуть ситуация, когда вам будет необходимо установить части CakePHP в разные директории, или даже на разные диски в системе. Это может быть связано с ограничениями хостинга или с тем, что вы хотите заставить работать несколько сайтов с одним ядром Cake.


Для начала вам необходимо узнать, что существуют три независимые части CakePHP:


Каждая из этих директорий может быть расположена в любом месте системы, за исключением webroot, которая обязательно должна быть доступна с точки зрения директивы Document Root?. Можно вынести папку webroot за пределы папки app, вы потом расскажете системе где искать ее части.


Чтобы указать системе где хранятся ее части — надо немного изменить файл /app/webroot/index.php. Есть три константы, значения которых нужно поменять: ROOT, APP_DIR и CAKE_CORE_INCLUDE_PATH.


Давайте проверим вышеописанное на примере. Предположим, я захотел установить CakePHP следующим образом:


Учитывая все мои пожелания необходимо изменить файл webroot/index.php (который в примере расположен в /var/www/mysite/index.php) следующим образом:

if (!defined('ROOT')) {
    define('ROOT', DS.'home'.DS.'me');
}
 
if (!defined('APP_DIR')) {
    define ('APP_DIR', 'mysite');
}
 
if (!defined('CAKE_CORE_INCLUDE_PATH')) {
    define('CAKE_CORE_INCLUDE_PATH', DS.'usr'.DS.'lib'.DS.'cake');
}

/app/webroot/index.php (частично, с удаленными комментариями)

Рекомендуется использовать константу DS вместо косой черты (/) для разделения директорий. За счет этого у вас не возникнет проблем при переносе кода с одной операционной системы на другую.

Дополнительные пути


Если вам необходимо разделить части MVC архитектуры между несколькими приложениями на CakePHP, то вы можете в файле bootstrap.php указать пути, по которым следует искать ваши Модели, Контроллеры или Отображения, а так же помогающие им Поведения, Компоненты и Помощники.


Вот несколько переменных, которые можно определить в файле bootstrap.php для выполнения этой задачи:


$viewPaths        = array();
$controllerPaths  = array();
$modelPaths       = array();
$helperPaths      = array();
$componentPaths   = array();
$behaviorPaths    = array();


Элементами массива могут быть так же полные пути в файловой системе. Не забудьте поставить слеш в конце каждого пути.

Apache и mod_rewrite


Хотя CakePHP и настроен изначально таким образом чтобы работать сразу с mod_rewrite — мы заметили что у некоторых пользователей не выходит получить красивые URL-адреса, и они ведут непримиримую борьбу с настройками. Вот несколько советов, которые помогут заставить работать все так, как вам бы того хотелось:

Внимание, Огонь!


Хорошо, давайте посмотрим на CakePHP в действии. В зависимости от вашей установки наберите в браузере http://example.com/ или http://example.com/cake_install/. На текущий момент перед вами предстанет страница домашняя страница CakePHP с информацией о настройке базы данных и кеширования.


Поздравляем! Теперь вы готовы к созданию первого приложения на CakePHP!


<< Подготовка к установке | Настройка >>


 
Комментарии

установка cake


При установке возникли 2 проблемки.


1. Нужно было определить БД определил, все нет прблемы.


2. Ошибка непонятная:


Notice (1024): Please change the value of 'Security.salt?' in app/config/core.php to a salt value specific to your application [CORE\cake\libs\debugger.php, line 541]


По указанному адресу функция checkSessionKey()


При нажатии извещения (нотайс) появляется следующий набор:


Debugger::checkSessionKey() – CORE\cake\libs\debugger.php, line 541
include – CORE\cake\libs\view\pages\home.ctp, line 31
View::_render() – CORE\cake\libs\view\view.php, line 654
View::render() – CORE\cake\libs\view\view.php, line 372
Controller::render() – CORE\cake\libs\controller\controller.php, line 744
Pages Controller?::display() – CORE\cake\libs\controller\pages_controller.php, line 84
Object::dispatchMethod() – CORE\cake\libs\object.php, line 116
Dispatcher::_invoke() – CORE\cake\dispatcher.php, line 259
Dispatcher::dispatch() – CORE\cake\dispatcher.php, line 213
[main] – APP\webroot\index.php, line 90


Подскажите как с этим бороться плз.

SokAnt? (2008-11-14 22:54:46)

2. надо опредилить уникальний ключ, просто изменить несколько символов или весь хеш
app/config/core.php line 153
Configure::write('Security.salt?', 'DYhG93b0qyJfI21s2guVoUubWwvniR2G0FgaC9mi');

absent.bit.te.ua (2008-11-28 13:26:01)

спасиб, давно сам разобрался, забыл тут отписаться. :) Все равно спасиб.

SokAnt? (2008-11-28 13:40:25)
2. надо опредилить уникальний ключ, просто изменить несколько символов или весь хеш
app/config/core.php line 153
Configure::write('Security.salt??', 'DYhG93b0qyJfI21s2guVoUubWwvniR2G0FgaC9mi');

№2 спасибо за помощь, сработало !
host-static-92-115-175-163.moldtelecom.md (2009-04-02 17:32:20)
Чтото у меня не получается установить Версия Cake PHP? 1.2.2.8120.

Your tmp directory is writable.
The File Engine? is being used for caching. To change the config edit APP/config/core.php
Your database configuration file is present.
Cake is able to connect to the database.

все показывает зеленом а далее что делать чтоб установить
host-static-92-115-175-163.moldtelecom.md (2009-04-02 20:46:03)
Cake is NOT able to connect to the database.

Первые три зеленые а последнее желтое с таким сообщением

Что не так??
77.66.251.118 (2011-01-19 18:01:42)
Fatal error: Class 'Debugger' not found in D:\www\test\cake\libs\view\pages\home.ctp on line 26

В чем проблема?
91-185-63-238-irk.cust.dsi.ru (2011-07-07 17:19:10)
Если у кого то возникла такая же проблема как описано в предыдущем посте, а именно:
Fatal error: Class 'Debugger' not found in D:\www\test\cake\libs\view\pages\home.ctp on line 26

То я решил ее следующим образом:
В файле /app/webroot/index.php после 76 строки
require LIBS . 'dispatcher.php';
Добавил еще одну строку:
require_once LIBS . 'debugger.php';

Не уверен на сколько этот метод верный, но все заработало!
94-137-221-56.pppoe.irknet.ru (2011-10-22 15:48:47)
Добавить комментарий:

Файлов нет. [Показать файлы/форму]