Online Snippets Library

Steps to create custom 404 error page In Codeigniter

We can easly create custom 404 page in codeigniter.We will use following step to create custom error page.

Step 1

Create view file with named "error_404.php" inside application\views\error_404.php and add following code.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>404 Page Not Found</title>
<style type="text/css">
::selection { background-color: #E13300; color: white; }
::-moz-selection { background-color: #E13300; color: white; }
body {
  background-color: #fff;
  margin: 40px;
  font: 13px/20px normal Helvetica, Arial, sans-serif;
  color: #4F5155;
}
a {
  color: #003399;
  background-color: transparent;
  font-weight: normal;
}
h1 {
  color: #444;
  background-color: transparent;
  border-bottom: 1px solid #D0D0D0;
  font-size: 19px;
  font-weight: normal;
  margin: 0 0 14px 0;
  padding: 14px 15px 10px 15px;
}
code {
  font-family: Consolas, Monaco, Courier New, Courier, monospace;
  font-size: 12px;
  background-color: #f9f9f9;
  border: 1px solid #D0D0D0;
  color: #002166;
  display: block;
  margin: 14px 0 14px 0;
  padding: 12px 10px 12px 10px;
}
#container-fluid {
  margin: 10px;
  border: 1px solid #D0D0D0;
  box-shadow: 0 0 8px #D0D0D0;
}

p {
  margin: 12px 15px 12px 15px;
}
</style>
</head>
<body>
  <div id="container-fluid">
    <h1><?php echo $heading; ?></h1>
    <?php echo $message; ?>
  </div>
</body>
</html>
Step 2

Create Controller file with named "custom404.php" inside application\controllers\custom404.php and add following code.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Custom404 extends CI_Controller {

  public function index()
  {
    $this->load->view('error_404');
  }
}
Step 3

Go to "application/config/routes.php" open and add custom controller for 404 error page.

$route['404_override'] = 'custom404'; // adding custom controller.

remove-index.php-from-url-in-codeigniter