在服务器上上传和配置cakephp - 显示路径但给出404

时间:2012-08-08 21:39:43

标签: php cakephp

我一直在localhost上运行cakephp,最后上传到我的服务器。我没有必要触摸index.php文件(使用XAMPP),它运行得很好,但现在我已经准备好上线了,我遇到了一些问题。

当我输入www.mydomain.com时,它加载了www.mydomain.com/users/index但是它给了404.我正确地假设它找到我的控制器,因为它显示/ users / index(我的一个控制器和一个动作)?我检查过,我的所有控制器,模型和视图都在服务器上,所以我不确定它为什么会遇到麻烦。这可能是我的index.php文件的问题,还是与cake直接相关的东西?

另外,我在哪里可以更改设置,以便我的网站默认启动到www.domain.com/posts?通过路线,我可以将www.domain.com/posts发送到www.domain.com,对吧?

我观看了这段视频我观看了这段视频http://www.youtube.com/watch?v=4GobWo1rIkE(我使用的是蛋糕2.x而不是1.x),我无法让它正常工作。

编辑 - 我找到它来查找视图,但我的css文件未加载

2 个答案:

答案 0 :(得分:0)

您是否在服务器上安装/配置了mod_rewrite?

  

另外,我在哪里可以更改设置,以便我的网站默认启动到www.domain.com/posts?通过路线,我可以将www.domain.com/posts发送到www.domain.com,对吗?

正确。通过路由器。

答案 1 :(得分:0)

根据您报告的行为,听起来网址重写未启用或未正确配置。

URL重写允许网络服务器正确定位资源和资产,例如CSS。

这可以通过多种方式解决。

建议的方法是将服务器设置为使用app/webroot目录作为文档根目录。此目录包含一个index.php文件,该文件作为应用程序的前端控制器运行,资产将在没有问题的情况下找到。将此目录用于文档根目录也意味着Webroot之外的其余代码是安全的。

完成后,请确保已启用并正确设置了URL重写。

如果您使用的是Apache,则需要启用mod_rewrite,并且.htaccess目录中需要app/webroot个文件。

通常当人们将其应用程序的内容FTP到服务器时,会跳过.htaccess个文件,因为它们被认为是大多数操作系统上的隐藏文件。仔细检查.htaccess文件是否到位,以及是否已启用重写。

默认路线

如果您希望默认网址/转到PostsController,您可以修改app/Config/routes.php中的默认路由:

Router::Connect('/', array('controller' => 'posts', 'action' => 'index'));