我正在使用 Codeigniter。
我在“/core/MY_Controller.php”中有一个类 MY_Controller

class MY_Controller extends CI_Controller
{
   function __construct()
    {
        parent::__construct();
        echo $controller = $this->uri->segment(1);
    }
}

和类 Login.php 在\controllers\admin\Login.php
class Login extends MY_Controller{
   function index()
    {
        echo 'login';
    }
}

当我在浏览器中访问 http://localhost/codeigniter/admin/login/ 时收到错误 404。
404 Page Not Found

The page you requested was not found.

有任何想法吗?我究竟做错了什么?谢谢 C。

最佳答案

技巧

将此代码添加到顶部的 config 文件中,此代码可以帮助您

function __autoload($class)
{
  if (strpos($class, 'CI_') !== 0)
  {
        if (file_exists($file = APPPATH . 'core/' . $class . '.php'))
        {
              include $file;
        }
  }
}

方法

您需要在 config 文件中设置 Prefix
$config['subclass_prefix'] = 'MY_';

htaccess
     RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

路线
$route['default_controller'] = 'YOUR_CONTROLLER';
$route['404_override'] = '';
$route['admin'] = "admin/login";

关于codeigniter - codeigniter 中的错误 "404 Page Not Found",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36539456/

10-16 03:43