在我的本地MAMP安装上,我有一个WordPress站点,我正在尝试使用他们的博客教程获得CakePHP站点(2.5.6) . 我想尝试CakePHP,看看它是否适合未来的项目 .
文件夹结构的有趣部分如下:
htdocs
|_ cakePHPBox
| |_ app
|_ local_blog
WordPress站点最初安装在根文件夹中 . 移动之后,我最终在htdocs根目录中包含了一个包含以下内容的.htaccess文件:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^cakePHPBox/(.*)$ /cakePHPBox/$1 [L,QSA]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_URI} !^/cakePHPBox [NC]
RewriteBase /local_blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/cakePHPBox [NC]
RewriteRule . /local_blog/index.php [L]
</IfModule>
# END WordPress
htdocs / cakePHPBox中的.htaccess文件如下所示:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /cakePHPBox
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
htdocs / cakePHPBox / app中的.htaccess文件如下所示:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /cakePHPBox
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
htdocs / cakePHPBox / app / webroot中的.htaccess文件如下所示:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /cakePHPBox
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
这些是从原件修改而来的;我试图解释CakePHP所在的子文件夹,而htdocs中的子文件夹也试图考虑WordPress的子文件夹 .
WordPress博客有效 . cakePHP教程没有! CakePHP的“登陆页面”没有问题 .
尝试按照教程_2924068的问题访问URL http://localhost/cakePHPBox/posts/index
因为它在页面顶部打印文件而不是执行它,但我不知道为什么会发生这种情况 .
各种现有的StackOverflow问题和答案让我走到了这一步,但现在我被卡住了!
1 回答
您的app / Controller目录中似乎没有PostsController.php文件 . 可能是这样吗?鉴于您正在使用app / webroot / index.php,CakePHP似乎正在努力达到这一点 .