CakePHP 3 Apache 找不到视图
CakePHP 3 Apache does not find Views
我刚开始使用 CakePHP3.0,在执行“Quick Start Guide”时,我遇到了一个让我卡住的步骤。
标记为数据库配置的部分让我创建了一些 MySQL 表(我从站点复制粘贴)然后 运行 命令:bin/cake bake all bookmarks
、bin/cake bake all users
、和 bin/cake bake all tags
.
运行执行这三个命令后,生成了几个文件;与我刚刚创建的表关联的模型和控制器。但是,尚未创建视图...顺便说一句,我正在使用 Ubuntu 12.04
按照教程的建议,我检查了 apache2/mods-enabled 目录中的 rewrite.load
,它就在那里。
还有其他人遇到过这个问题吗?
很可能我犯了一个简单的错误
这是我第一次运行bin/cake bake all bookmarks
时的输出:
正如教程所建议的,如果我收到 404 页面未找到错误,我应该确保为 apache2 启用了 mod_rewrite,我还注意到它说使用 http://localhost:8765/bookmarks
因为我的 web服务器配置在端口 80
我一直忽略教程建议的端口号。
这是我的 apache2/mods_enabled/ 的屏幕截图:(存在 rewrite.load)
最后,这是我在/config/App.php中配置的数据源:
问题开始出现在我的 Apache 配置和 rewrite
规则上。我会进一步调查。
事实证明,我最初对 CakePHP3 应该创建什么感到困惑,现在意识到它是 运行 所期望的(请参阅上面的输出问题)。设置了正确的 DocumentRoot
,如果 rewrite
设置不正确,导航到您的页面可能会开始下载您要查看的文件。
真正的问题出在我的 Apache 配置上。这些是我配置 Apache 2.4 所遵循的步骤(在重新安装 Apache 之后):
在/etc/apache2/sites-available/000-default.conf
和/etc/apache2/sites-enabled/000-default.conf
中添加新的DocumentRoot
启用mod_rewrite:a2enmod rewrite
重新启动 Apache:service apache2 restart
启用 rewrite
后,您的 /etc/apache2/mods-enabled/ 可能如下所示(注意重写突出显示):
问题已解决。感谢 this post!
@user1843159 - 感谢您指出 Apache 配置的方向。
我刚开始使用 CakePHP3.0,在执行“Quick Start Guide”时,我遇到了一个让我卡住的步骤。
标记为数据库配置的部分让我创建了一些 MySQL 表(我从站点复制粘贴)然后 运行 命令:bin/cake bake all bookmarks
、bin/cake bake all users
、和 bin/cake bake all tags
.
运行执行这三个命令后,生成了几个文件;与我刚刚创建的表关联的模型和控制器。但是,尚未创建视图...顺便说一句,我正在使用 Ubuntu 12.04
按照教程的建议,我检查了 apache2/mods-enabled 目录中的 rewrite.load
,它就在那里。
还有其他人遇到过这个问题吗? 很可能我犯了一个简单的错误
这是我第一次运行bin/cake bake all bookmarks
时的输出:
正如教程所建议的,如果我收到 404 页面未找到错误,我应该确保为 apache2 启用了 mod_rewrite,我还注意到它说使用 http://localhost:8765/bookmarks
因为我的 web服务器配置在端口 80
我一直忽略教程建议的端口号。
这是我的 apache2/mods_enabled/ 的屏幕截图:(存在 rewrite.load)
最后,这是我在/config/App.php中配置的数据源:
问题开始出现在我的 Apache 配置和 rewrite
规则上。我会进一步调查。
事实证明,我最初对 CakePHP3 应该创建什么感到困惑,现在意识到它是 运行 所期望的(请参阅上面的输出问题)。设置了正确的 DocumentRoot
,如果 rewrite
设置不正确,导航到您的页面可能会开始下载您要查看的文件。
真正的问题出在我的 Apache 配置上。这些是我配置 Apache 2.4 所遵循的步骤(在重新安装 Apache 之后):
在
/etc/apache2/sites-available/000-default.conf
和/etc/apache2/sites-enabled/000-default.conf
中添加新的启用mod_rewrite:
a2enmod rewrite
重新启动 Apache:
service apache2 restart
DocumentRoot
启用 rewrite
后,您的 /etc/apache2/mods-enabled/ 可能如下所示(注意重写突出显示):
@user1843159 - 感谢您指出 Apache 配置的方向。