CAKEPHP - 将默认路径更改为webroot

时间:2012-02-28 16:41:47

标签: php cakephp install

我是cakephp的新手,我在设置本地开发服务器方面遇到了一些问题。我的蛋糕安装位于http://localhost/dropbox/my_site/。但是,当我尝试访问该URL时,它告诉我没有设置Dropbox控制器。如何告诉CakePHP从my_site而不是/localhost/开始?

我尝试在路由中添加connect(/localhost/dropbox/*),但似乎它仍然在错误的位置查找模型。

我尝试在app / webroot中编辑index.php,但所有示例都显示了如何以linux格式而不是windows编写目录,所以我不确定如何构建'ROOT'

2 个答案:

答案 0 :(得分:5)

CakePHP将在子目录中愉快地工作 - 我在我的开发机器上有http://localhost/ {appname}运行的几个Cake网站。

Cake在根index.php文件中定义其ROOT目录。如果你向里看,你会看到以下几行:

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

由于它从dirname(__FILE__)获取ROOT,因此它始终指向该文件的位置。

我怀疑你的路由文件有问题。您是否创建了任何自定义路由规则以考虑位于子目录中?如果你这样做了,你的蛋糕安装可能正试图访问http://localhost/dropbox/my_site/dropbox/ ......这就是你收到错误的原因。

答案 1 :(得分:0)

这可能与CakePHP没有太大关系,也与您的网络服务器有很大关系。

如果 dropbox 是您的文档根目录,则应在您的Web服务器配置中相应地映射它。例如,在Apache中使用DocumentRoot

相关问题