Вид господа, я использую Codeigniter для создания блога. Мне, возможно, понадобился бы способ перенаправить 404 ошибки в пользовательские 404 страницы. Точно так же, как какой 404 страницы Abduzeedo.com. Действительно ли возможно управлять этим при помощи маршрутов? Или я должен использовать контроллеры для направления его к другому представлению? Спасибо очень!
есть еще один способ, который я использую: переопределив ядро Exception класс Codeigniter. Сначала убедитесь, что префикс подкласса вашего файла конфигурации (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;
}
}
Теперь Контроллер ошибок будет вашей страницей ошибок, куда страница будет перенаправлена для ошибки 404.