CodeIgniter 404 找不到控制器

CodeIgniter 404 not found controller

我知道这个问题已经被问过很多次了,但我真的无法解决这个问题。 我的默认控制器工作正常,但如果我想访问另一个控制器,我将遇到 404 问题。

我的控制器文件名大写为Utilisateur.php, 所以我试图通过 <a href="Utilisateur/inscription">inscription</a>

访问控制器函数 inscription

这是我的配置:

$config['base_url'] = 'http://localhost:63342/WeBusy/';
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';

这是我的生根:

$route['default_controller'] = 'accueil';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

最后是控制器:

class Utilisateur extends CI_Controller {

    public function inscription(){
        $data = array('header' => 'HeaderAccueil.php', 'body' => 'utilisateur/AjoutUtilForm.php');
        $this->load->view('StructureHtml.php', $data);
    }

谢谢

提供锚点的完整路径

<a href="http://localhost:63342/WeBusy/Utilisateur/inscription">inscription</a>

但最佳做法是提供动态 url,例如使用 url 帮助程序或常量。

例如,如果使用 url 辅助函数,您的锚路径就像。

<a href="<?php echo site_url(); ?>Utilisateur/inscription">inscription</a>

不要忘记在自动加载文件或 class 构造函数中加载 url 帮助器。

我发现了问题, 所以我需要在应用程序的根目录中创建一个 .htaccess 文件以删除 index.php 并且这仍然不适用于 phpstorm,也许需要配置一些东西但它在 EasyPhp 上运行顺利:)

  1. 检查你的控制器文件名,应该是Utilisateur.php (ucfirst).
  2. 检查您的 mod_rewrite 是否有效:
    1. http://localhost:63342/WeBusy/index.php?q=utilisateur/inscription
    2. 将新方法 index() {die('test');} 添加到您的 Utilisateur 控制器并更改 $route['default_controller'] = 'accueil';至:$route['default_controller'] = 'utilisateur';