Define aliases inside the application/configs/aliases.php file to turn any valid controller action into a human readable (or SEO friendly) url.
<?php
$aliases->routes['welcome'] = "Index/index";
$aliases->routes['about'] = "Index/about";
$aliases->routes['contact'] = "Index/contact";
$aliases->routes['examples'] = "Index/examples";
$aliases->routes['error'] = "Error/index";
$aliases->routes['error-screen'] = "Error/index";
$aliases->routes['my-articles'] = "Example/articles";
$aliases->routes['api-type-example'] = "Example/controllerApi";
$aliases->routes['automatic-routing-example'] = "Example/controllerAutomatic";
$aliases->routes['simple-controller-example'] = "Example/controllerSimple";
$aliases->routes['default-model-binding-example'] = "Example/modelDefaultBinding";
$aliases->routes['action-view-example'] = "Example/viewSimple";
$aliases->routes['partial-view-example'] = "Example/viewPartial";
$aliases->routes['view-model-binding-example'] = "Example/viewModelBinding";
$aliases->routes['view-model-annotated-binding-example'] = "Example/viewModelFormBinding";
$aliases->routes['defining-aliases-example'] = "Example/definingAliases";
$aliases->routes['defining-annotations-example'] = "Example/definingAnnotations";
$aliases->routes['defining-bundles-example'] = "Example/definingBundles";
$aliases->routes['defining-routes-example'] = "Example/definingRoutes";
Did you know that multiple aliases can be defined for a single controller action and that aliases also respect any routing and automatic parameter binding attached to a controller?
The error and error-screen aliases point to the same action and respect the route defined inside the ErrorController.