我一直在寻找2小时的解决方案,但似乎没有任何工作......这是我的问题:
我在根目录中安装了WordPress(var / www)。所以转到http://www.geekderek.com,我会看到我的wordpress网站。
我将CakePHP放在子目录var / www / cakephp中。我想通过访问:www.geekderek.com/cakephp来查看我的CakePHP应用程序。
但是,目前这个网址只返回一个Wordpress页面,上面写着“找不到内容。”
我相信这个问题可以通过在我的根目录中修改.htaccess来解决。所以这是我的.htaccess:http://pastebin.com/sXJTRstB
如您所见,我将此行添加到默认的WP .htaccess文件中:
RewriteRule ^cakephp(/(.*))?$ cakephp/app/webroot/$1 [QSA,L]
然而,由于某种原因,这似乎不起作用。
有谁能告诉我有什么问题?非常感谢你!
答案 0 :(得分:2)
我有simmilar设置,我的蛋糕应用程序在子目录中,我的根.htaccess有这个重写规则:
RewriteRule ^cakephp/(.*)$ /cakephp/$1 [L,QSA]
所有其余的都是通过常规的cakephp设置处理的。
my /cakephp/app/webroot/.htaccess:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
希望这也适合你:)
答案 1 :(得分:0)
thanat的回答几乎对我有用。我只需要编辑 RewriteBase 来阅读
RewriteBase /cakephp
并确保apache conf允许我的根目录覆盖其先前的选项
<Directory "/my/root/dir">
AllowOverride All
</Directory>
但是我的 app dir位于apache设置的 DocumentRoot 之外。而 cakephp 目录实际上是 webroot 本身。所以我的目标结构如下
/my/root
/my/root/app #cake's app dir without webroot
/my/root/dir #apache DocumentRoot (your wordpress is here)
/my/root/dir/cakephp #cake's webroot
还要确保编辑/my/root/dir/cakephp/index.php
,以便知道应用和蛋糕库目录的位置。
答案 2 :(得分:0)
这是我的情况,使用laravel,但它们是相同的。
https://community.bitnami.com/t/laravel-application-in-subdirectory-of-wordpress-website/79535/2
只需更改
AllowOverride None => AllowOverride All