Расширьте базовый класс CI_Exceptions с помощью собственной функции show_error
.Используйте исходный код для show_error
, но добавьте в начало быструю проверку по этим строкам:
class MY_Exceptions extends CI_Exceptions {
/**
* General Error Page
*
* This function takes an error message as input
* (either as a string or an array) and displays
* it using the specified template.
*
* @access private
* @param string the heading
* @param string the message
* @param string the template name
* @return string
*/
function show_error($heading, $message, $template = 'error_general', $status_code = 500)
{
// First try forwarding to all-lowercase URL if there were caps in the request
if ($_SERVER['REQUEST_URI'] != strtolower($_SERVER['REQUEST_URI']))
{
header('Location: ' . strtolower($_SERVER['REQUEST_URI']));
return;
}
/* Rest of original function to follow... */
Настройте при необходимости, учитывая другие части URI, которые вы, возможно, захотите использовать в верхнем регистре.
Вы также можете достичь аналогичной функциональности с помощью pre_system (или pre_controller) ловушки , хотя я бы лично сделал это, только если ловушки уже включены для другой цели.