CodeIgniter – Personalizar error404

El FrameWork PHP CodeIgniter permite personalizar nuestra pantalla de Error404. Este error se muestra cuando el servidor no encuentra la página que busca. Para personalizar lo que mostramos cuando nuestro servidor no encuentre una página, lo haremos de la siguiente manera…

1. Modificar el fichero routes.php

Por defecto, una de las lineas del fichero, indica qué controlador debe utilizarse para la carga del error 404.

1
2
// Fichero: application/config/routes.php
$route['404_override'] = 'notfound/index';

2. Modificamos el controlador

Lo trataremos como cualquier controlador.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
// Fichero: application/controllers/notfound.php
class Notfound extends CI_Controller {
 
    function __construct() {
        parent::__construct();
    }
 
    function index() {
        if ($this->agent->is_mobile() && $this->config->item('module_mobile')) {
            $this->load->view('mobile/404_view');
        } else {
            $this->load->view('web/404_view');
        }
    }
}
?>

En este ejemplo, dentro del controlador que se llama en el error 404, miramos si se visita desde un móvil o no. En cada caso, cargamos la vista que le corresponde. De esta manera, mostramos un error404 personalizado según el dispositivo que utilice el usuario para visitarnos.

Artículos relacionados

CodeIgniter – Seguridad – Evitar XSS e... Siguiendo con los puntos de seguridad de CodeIgniter, vamos a ver cómo podemos hacer nuestros formularios mas seguros. Es sabido que se puede aprovech...
Codeigniter – Obligar a cargar página sin ut... En varias ocasiones, necesitaremos que una página no se guarde en caché. El tipo ejemplo es cuando vamos de una página a otra, y pulsamos posteriormen...
CodeIgniter – Seguridad – No permitir ... Cuando de seguridad se trata, todo es poco. A la hora de programar, y mas concretamente configurar el Framework con el que trabajemos, es un punto que...
CodeIgniter – Quitar index.php de la url Para poder trabajar bien las url amigables en CodeIgniter, debemos quitar el index.php que sale por defecto cuando navegas por la aplicación. Hay que ...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*