Kohana 404 custom page-Collection of common programming errors
here is how I do it with Kohana 3.2
- Add exceptions handling stuff in index.php
try
{
$request = $request->execute();
}
catch(Kohana_HTTP_Exception_404 $e)
{
$request = Request::factory('errors/404')->execute();
}
catch(Exception $e)
{
$request = Request::factory('errors/500')->execute();
}
echo $request->send_headers()->body();
- Then write Errors controller
class Controller_Errors extends Controller
{
public function __construct($request, $response)
{
parent::__construct($request, $response);
}
public function action_404()
{
$this->response->body(View::factory('errors/404'));
}
public function action_500()
{
$this->response->body(View::factory('errors/500'));
}
}
-
Create 2 corresponding error pages (404.php and 500.php in views/errors)
-
Add new route to your bootstrap.php or use default one (depends on you project’s structure), just make sure Controller_Errors can be reached when exception is thrown
- Now every time you throws the exception in your controller, it will display the custom error page, like this
throw new HTTP_Exception_404;
Originally posted 2013-11-27 12:00:40.