实时服务器上的Codeigniter 404

时间:2015-04-02 11:30:17

标签: codeigniter

我正在使用HMVC运行CI 3.0。在我的本地XAMPP一切正常,但在我的(Linux)实时服务器上,我从CI收到错误404(找不到页面)。

我已经过了几个小时,我发现要解决这个问题......没有成功!

以下是我现在所拥有的:

$route['default_controller'] = 'default';

htaccess的:

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

我的结构:

-application

- 模

---默认

----控制器

- - - - 如default.php

我的控制器Default.php:

class Default extends MY_Controller  {

 public function __construct()
 {
     parent::__construct();
 }

 public function index()
 {
     ....
 }
}

CI错误日志错误:

错误 - 2015-04-02 13:15:56 - &gt;找不到404页面:../ modules / default / controllers // index

..仍然是404.这有什么问题???

2 个答案:

答案 0 :(得分:0)

检查所有控制器和库是否已开始大写即欢迎。在您的核心/ MY_Controller中,您可以通过 MX_Controller

进行扩展

<强>芯/ MY_Controller

class MY_Controller extends MX_Controller {}

<强>配置/ routes.php文件

$route['default_controller'] = "default/default/index";

hmvc中的路由需要 module-name / controller-name / function

当你从那里下载hmvc时,请确保你去分支机构并为你的codeigniter下载正确的版本“HMVC默认下载”适用于codeigniter 2

虽然我认为现在只有codeigniter hmvc 3可供下载。 https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/downloads

我在下面的主目录中也使用了htaccess。您还可以从此处下载更多htaccess文件。下载部分http://www.insiderclub.org/

Options +FollowSymLinks
Options -Indexes

<FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))">
    Order deny,allow
    Deny from all
</FilesMatch>

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

答案 1 :(得分:0)

知道了!

为了使用HMVC进行测试/开发,我将原始文件夹应用程序/控制器重命名为application / controllers_off。  我的控制器位于:

应用/模块/默认/控制器/

所以我想我可以重命名或删除原始文件夹

文件夹应用程序/控制器是空的,但似乎HMVC扩展需要此文件夹。因此将其重命名为“控制器”解决了我的问题。

难以置信!!!