【问题标题】:Page not found after update to Codeigniter 3更新到 Codeigniter 3 后找不到页面
【发布时间】:2015-03-17 06:58:11
【问题描述】:

我正在尝试在更新到 Codeigniter 3.0 时摆脱 404 Page not found 错误

我正在使用 Ion Auth 和 HMVC 库。我已经修复了 Ion Auth 问题,并且我相信(不太确定)我也修复了 HMVC 问题。如果不是不知道如何调试^_^它。但我已经用各自仓库中的最新库更新了这两个库。

我已成功登录,但当系统在登录后尝试加载第一页时,出现 404 错误,这是日志

DEBUG - 2015-03-17 10:51:51 --> UTF-8 Support Enabled
DEBUG - 2015-03-17 10:51:51 --> Global POST, GET and COOKIE data sanitized
ERROR - 2015-03-17 10:51:51 --> 404 Page Not Found: ../modules/admin/controllers/dashboard//index

注意:URI 中最后一段(索引)之前的双斜杠。是不是很奇怪?

我想知道这里有什么问题。我也尝试通过设置AUTOREQUEST_URI 来尝试uri_protocol,但它们都不起作用。

$config['uri_protocol'] = 'AUTO';

$config['uri_protocol'] = 'REQUEST_URI';

现在,我的发展完全卡住了。谁能帮我解决这个问题?非常感谢...!

路线信息

application/config/routes.php

$route['default_controller'] = "users/login";
$route['404_override'] = '';

application/modules/users/config/routes.php 这是给Ion Auth

$route['users/(:any)'] = "auth/$1";

【问题讨论】:

  • 在你的重定向中你是否在 routes.php 中设置了你的路由
  • 我在我的问题中添加了路线信息。请通过它。顺便说一句,该系统在 CI 2.2.1 中运行良好。只是 CI 3.0 给了很多麻烦。
  • 你所有的控制器和库是否都需要在 CI3 和 HMVC 3 中也是“auth/function/$1”; “授权/编辑/$1”; auth 我在想 auth 是模块文件夹名称吗?那么你需要包含“auth/controller/function/$1”;
  • 类名大写,文件名不大写。文件名也区分大小写吗?
  • @mustang83 auth 是 Ion Auth 库名称。我刚刚将其重命名为 users 并移至 modules 文件夹。我相信放置应该不是问题,因为我从 CI 2.1.4 开始使用

标签: php codeigniter


【解决方案1】:

我已通过将控制器文件夹和模型文件夹中的所有类文件名大写来解决我的 404 重定向问题。 所以我没有使用 main.php,而是使用了 Main.php。

希望这对从 CI 2 迁移到 CI 3.0 的人有所帮助

【讨论】:

  • 哈利路亚,当我从 CI2 转到 3 时,这对我的 404 问题进行了排序!
【解决方案2】:

将所有控制器和模型文件大写。

例如: - 控制器/Ajax.php

类 Ajax 扩展 MX_Controller { ...一些神奇的东西 }

【讨论】:

    猜你喜欢
    • 2016-02-21
    • 1970-01-01
    • 2017-03-07
    • 2016-08-25
    • 2017-12-20
    • 2021-10-29
    • 2020-07-14
    • 2019-12-02
    相关资源
    最近更新 更多