我在localhost/domains/mydomain/
中安装了cakePHP,在localhost/
中安装了.htaccess文件,其中包含以下内容:
RewriteEngine On
RewriteRule ^$ /domains/mydomain/app/webroot/ [L]
RewriteRule (.*) /domains/mydomain/app/webroot/$1 [L]
因此我的网站可以在localhost/
地址上访问。问题是我网站上的所有链接都指向localhost/domains/mydomain/
。 Cake有没有办法认为它在localhost/
文件夹中,所以我会删除URL中丑陋的domains/mydomain/
?
答案 0 :(得分:0)
不幸的是,没有人能回答我的问题所以我不得不使用解决方法。为了帮助其他几代人,我做了以下事情:
我将我的webroot文件夹移动到了webserver的根文件夹:
webhost_root(localhost)
|- domains
| |- mydomain
| |- app
| |- cake
| |- plugins
| |- vendors
|-webroot
然后我不得不调整webroot / index.php来查看域/ mydomain / app我的蛋糕应用程序:
if (!defined('ROOT')) {
define('ROOT', (dirname(dirname(__FILE__))).'/domains/mydomain/');
}
if (!defined('APP_DIR')) {
define('APP_DIR', 'app/');
}
唯一剩下的就是webhost_root中的.htaccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain(.*)$
RewriteRule ^$ webroot/ [L]
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain(.*)$
RewriteRule (.*) webroot/$1 [L]
希望它有所帮助。
答案 1 :(得分:0)
一年后,我找到了正确的解决方案。只需将其放入核心或引导文件中即可完成。
Configure::write('App', array('base' => ''));