【问题标题】:Why am I getting a 404 error when I attemp to access my CodeIgniter app?当我尝试访问我的 CodeIgniter 应用程序时,为什么会收到 404 错误?
【发布时间】:2012-05-22 18:04:39
【问题描述】:

CodeIgniter manual 中,它演示了如何为 blog.php 制作控制器。它说您可以将浏览器指向http://example.com/blog,它会显示回显“hello world”;控制器文件夹中 blog.php 文件中的代码:

当我访问 example.com/blog 时,我收到 404 错误。我删除了 url 中的 index.php,但我认为这个问题之前存在。

任何帮助都会很棒。

【问题讨论】:

  • 这不是问题,这是 CI 的默认 URL。
  • 我想我很困惑。在文档中它说我可以创建一个名为 blog.php 的控制器并将我的浏览器指向它并让控制器回显“hello world”我知道它不是它的功能,但我只是想确保它设置正确。
  • @Schnaars:你能成功访问yoursite.com/index.php/blog吗?除非您使用 mod_rewrite 并调整您的 config.php 设置,否则您必须在 URL 中包含 index.php
  • 是的,你甚至可以根据需要重写 url
  • 你真的在访问example.com/blog吗?还是localhost/blog?因为example.com一个示例,所以您应该将其替换为您自己的主机名。

标签: php codeigniter


【解决方案1】:

您是否将博客路由添加到 routes.php 文件中?

http://codeigniter.com/user_guide/general/routing.html

每个 URL 都需要映射到一个路由,以便框架知道要运行哪个控制器。做起来很简单,但很遗憾我已经有一段时间没有使用 CI,而且我这里也没有任何 CI 项目来仔细检查它的位置。

但是,这两个视频教程非常好,它们会帮助您学习。

http://codeigniter.com/tutorials/

到目前为止,您有任何与 CI 相关的工作吗..?

【讨论】:

  • -1 “每个 URL 都需要映射到一个路由,以便框架知道要运行哪个控制器”是不正确的。仅当您想要映射到与 URL 的相应 controller/method/id 段不同的内容时,才需要添加自定义路由。
  • 我的立场是正确的。很明显,我在 Symfony 中的想法太久了。
  • 好酷。我要为此努力。感谢你的帮助。对不起新手问题。当我找到路线时,我会报告。
  • @Schnaars:这里的重点是你不应该需要路线来做你想做的事情。
猜你喜欢
  • 2010-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-28
  • 2022-01-26
  • 1970-01-01
  • 2015-04-12
相关资源
最近更新 更多