亲切的先生们, 我正在使用 Codeigniter 来构建博客。我可能需要一种将 404 错误重定向到自定义 404 页面的方法。就像 Abduzeedo.com 的 404 页面一样。是否可以通过使用路由来控制它?或者我应该使用 Controller 将其定向到另一个 View ?非常感谢!
最佳答案
我还使用了另一种方法:重写 Codeigniter 的 Exception 核心类。首先确保您的配置文件(system/application/config/config.php)子类前缀如下
$config['subclass_prefix'] = 'MY_';
然后在系统/应用程序/库中创建一个名为 MY_Exceptions.php 的文件。然后在这里重写函数show_404()函数如下。
class MY_Exceptions extends CI_Exceptions{
function MY_Exceptions(){
parent::CI_Exceptions();
}
function show_404($page=''){
$this->config =& get_config();
$base_url = $this->config['base_url'];
$_SESSION['error_message'] = 'Error message';
header("location: ".$base_url.'error.html');
exit;
}
}
现在错误 Controller 将成为您的错误页面,页面将被重定向到 404 错误。
关于php - 如何使用 Codeigniter 在自定义 404 页面中重定向 404 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2310061/