添加到这一点,因为它在我的谷歌搜索的顶部,这些答案没有帮助。
CakePHP 使用了 3 个都需要修改的 .htaccess 文件。一个在顶级 CakePHP 目录中,一个在 app/ 中,一个在 app/webroot 中。将以下内容添加到其中的每一项中:
RewriteBase /path/to/dir/
在我的机器上,我有以下结构: ~/Sites/site1 ~/sites/site2/admin
每个目录都有一个单独的 CakePHP 安装。
在 site1 和 site2/admin 中安装 CakePHP。这些网站的网址是:
http://localhost/~me/site1
http://localhost/~me/site2/admin
我一直收到此错误:在此服务器上找不到请求的 URL /home/me/Sites/site1/app/webroot/index.php。
我修改了 3 个 .htaccess 文件来获得这些:
site1 .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /~me/site1/
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
site1/app .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /~me/site1/app/
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
site1/app/webroot .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /~me/site1/app/webroot/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
而已。这三个变化就是你所需要的。