未找到CodeIgniter新控制器?

时间:2012-02-12 10:27:45

标签: php codeigniter-2

我安装了最新的CodeIgniter并将welcome.php复制到backend.php,并将类变量更改为Backend但是当我转到/ backend时它表示找不到控制器。我的.htaccess的内容如下。

# Do not remove this line, otherwise mod_rewrite rules will stop working
RewriteBase /
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [QSA,L]

我也试图改变uri方法来请求uri,仍然是同样的问题。

索引控制器可以工作,但不能从索引创建后端。 (的welcome.php)

2 个答案:

答案 0 :(得分:2)

检查backend.php中定义的类名是否为Backend

class Backend extends CI_Controller { ... }

确保index控制器中有方法Backend(默认操作):

 public function index() { ... }

PS:您还可以创建一个新目录backend,并在后端放置您需要的所有控制器。如果您在后端区域具有复杂的功能,这将使事情变得更容易。

答案 1 :(得分:1)

你需要一个htaccess文件,里面写着以下内容。

<IfModule mod_rewrite.c>
RewriteEngine on


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

问题是可以通过在URL中添加/ index然后在控制器名称中添加/来访问控制器。

因此,您需要一个htaccess文件来删除该问题。