CAKEPHP – изменить путь по умолчанию к webroot

Я новичок в cakephp, и у меня возникают проблемы с настройкой локального сервера разработки. У меня есть установка для торта, расположенная по адресу http: // localhost / dropbox / my_site / . Однако, когда я пытаюсь посетить этот URL-адрес, он сообщает мне, что контроллер Dropbox не настроен. Как я могу сказать CakePHP для запуска в my_site а не /localhost/ ?

Я попытался добавить к маршрутам connect(/localhost/dropbox/*) , но похоже, что он по-прежнему ищет модели в неправильном месте.

Я пробовал редактировать index.php в приложении / webroot, но все примеры показывают, как писать каталог в формате linux, а не в окнах, поэтому я не уверен, как структурировать ROOT,

CakePHP будет работать в подкаталоге – у меня есть несколько сайтов Cake, работающих под http: // localhost / {appname} на моей машине dev.

Cake определяет свой каталог ROOT в корневом файле index.php. Если вы заглянете внутрь, вы увидите следующие строки:

 define('ROOT', dirname(__FILE__)); define('WEBROOT_DIR', 'webroot'); define('WWW_ROOT', ROOT . DS . APP_DIR . DS . WEBROOT_DIR . DS); 

Поскольку он берет ROOT из dirname(__FILE__) , он всегда укажет на местоположение этого файла.

Я подозреваю, что у вас проблемы с файлом маршрутизации. Создавали ли какие-либо пользовательские правила маршрутизации для учетной записи, находясь в подкаталоге? Если вы это сделали, ваша установка на торты может пытаться получить доступ к http: // localhost / dropbox / my_site / dropbox / … и именно поэтому вы получаете эту ошибку.

Вероятно, это не так много связано с CakePHP, как с вашим веб-сервером.

Если dropbox является вашим корнем для документов, он должен быть соответствующим образом сопоставлен в конфигурации вашего веб-сервера. Например, используя DocumentRoot в Apache.