我一直在使用codeigniter很长一段时间。我已将默认控制器设置为:
$route['default_controller'] = "main";
一切都很好,除了我在main.php
控制器文件中创建了一个重定向到404 Not Found页面的函数。
这是我在main.php中的代码:
function not_found()
{
$data['page_Title'] = '404 Error!';
$data['page_Description'] = 'Description';
$data['page_Keywords'] = 'Keywords';
$data['main_content'] = 'not_found';
$this->load->view('includes/template', $data);
}
然后,当我想加载example.com/not_found/
时,它会将我重定向到codeigniter的默认未找到页面并说:
404 Page Not Found
The page you requested was not found.
但是,请求页面没有问题:
example.com/main/not_found/
我是否必须设置另一条路线,如:
$route['not_found'] = "main/not_found";
?但这不是我想的好方法!
答案 0 :(得分:2)
CI的网址格式描述:
domain.com/controller/method
而不是:
domain.com/method
如果您的控制器中有index function
,那么将按以下方式调用该函数:
domain.com
答案 1 :(得分:1)
example.com/not_found / 意味着,codeIgniter会找到 controllers / not_found.php 并执行功能索引()
您必须创建 controllers / not_found.php