HMVC Modular Extension无法在远程服务器上运行

时间:2015-12-24 20:57:50

标签: php .htaccess codeigniter codeigniter-hmvc

我使用Codeigniter完成了一个小项目。它在localhost(xampp服务器)中正常运行,但是在远程服务器上传之后" 404 Page Not Found"错误显示。我无法找到我犯错误的地方。我正在使用MX Modular扩展程序& Codeigniter版本2.1.2

的config.php

$config['base_url'] = 'http://example.com/projectname';

route.php

$route['default_controller'] = "frontend";

.htaccess(根文件夹)

    <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>
  

申请 - &gt;模块 - &gt;前端 - &gt;控制器,模型,视图

     

申请 - &gt;模块 - &gt;管理员 - &gt;控制器,模型,视图

frontend.php(控制器)

class Frontend extends MY_Controller{   
 function __construct(){
    parent::__construct();  
}

function index(){       
    $data['main_content'] = 'frontend';
    $this->load->view('page', $data);
} }

请帮我解决这个问题。提前致谢

1 个答案:

答案 0 :(得分:0)

所有模块文件夹和类必须首字母大写。

GET   /*yourRoute          AppController.matcher(yourRoute)

当您调用任何模块功能时,它应该是

project
---applications
-----modules
-------Somemodule
---------controller
-----------Somemodule.php
---------model
------------Mdl_somemodule.php
---------views

基本上所有方面的控制器名称和模块文件夹名称都必须以大写字母开头。

无论如何必须从codeigniter 3.0开始。

如果在LAMP(Linux)服务器中没有遵循此约定,它会抛出404错误,尽管它在WAMP(Windows)服务器中正常工作。 linux文件名中的原因区分大小写。

**对于Ex: $ route [&#39; default_controller&#39;] =&#34; frontend&#34;;

应该是

$ route [&#39; default_controller&#39;] =&#34;前端&#34 ;; **