我在CodeIgniter上遇到了问题。
我创建了一个名为View的控制器。
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class View extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->model('client');
}
public function index(){
echo "Test";
/*$client = $this->client->getClientByID($idClient);
echo json_encode($client);*/
}
}
但是当我在浏览器中给他打电话时,他说:在这台服务器上找不到请求的URL / Modules / CommExpert / View /。
控制器视图中的index()已定义,只有一个回显。
有人能解释我吗?谢谢:D
答案 0 :(得分:3)
第一部分。 如果你遇到困难 - 通过做一些不同的事情来进行测试。
例如 - 创建一个名为test的新模块 在您的新模块/ test / controllers /下创建一个名为test.php的新控制器或者用于CI 3 Test.php
所以现在你有/application/modules/test/controllers/Test.php(对于CI 3)
在你的test.php控制器中输入
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Test extends CI_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo "This is the Test controller from my test module";
}
}
看看你是否可以让它发挥作用!
第二部分:
我看到您在网址中尝试了/ CommExpert / View并获得了404.
小心案例。 Windows和MAC并不关心区分大小写。 Linux系统。
您是否尝试过yourdomain.com/commexpert/view。 经过一些小试验后,我发现你可以拥有一个名为view的控制器(就个人而言,我会尝试寻找不同的东西)。 您也可以在URL中查看或查看,并且两者都有效。
重要的是控制器的情况。 在我的测试中,我有一个名为admin的模块,我创建了一个名为view的控制器,我得到以下内容...... **
注意:这适用于CI 3.0
URL Result domain.com/admin/view -> Works ( Lower case v in view ) domain.com/admin/View -> Works ( Upper case V in View ) domain.com/Admin/view -> 404 ( Big Admin, Lower case v in view ) domain.com/Admin/View -> 404 ( Big Admin, Lower case V in view )
看看这对你有帮助!
答案 1 :(得分:0)
这是我的.htaccess:
Options -Indexes
RewriteEngine on
RewriteCond $1 !^(index\.php|assets|uploads|editor|css|js|scripts|images|img|media|xml|user_guide|robots\.txt|favicon\.ico)
RewriteRule ^(.*)$ index.php/$1 [L,QSA]