Kohana 3 - перенаправление на страницу 404 - PullRequest
1 голос
/ 11 мая 2011

После поиска в интернете я не нашел ответа на свой вопрос. Например, в базовой комплектации, если вы перейдете на http://yoursite/welcome/, вы увидите hello world, но если вы наберете http://yoursite/welcom/, вы увидите Fatal error: Uncaught HTTP_Exception_404 [ 404 ]: The requested URL welcom/index was not found on this server. ~ SYSPATH/classes/kohana/request/client/internal.php [ 94 ] thrown in

Как я могу перенаправить пользователя на страницу 404, если он введет неправильный адрес?

Кохана 3.1.3.1

Ответы [ 2 ]

3 голосов
/ 11 мая 2011

Вот как мы это делаем:

  1. Объявите наш собственный обработчик исключений где-нибудь в bootstrap.php или модуле init.php. Теперь все исключения приложения будут отправлены на Kw_Exception_Handler::handle().

  2. Обработчик исключений анализирует тип исключения (используя метод getCode()) и создает новый запрос HMVC со специальным контроллером ошибок , например ('error / 404') .

Также вы можете добавить проверку для вызовов AJAX и вернуть структуру json с текстом ошибки.

PS. Это руководство пользователя может быть полезным.

1 голос
/ 11 мая 2011

Я думаю, что это будет работать для вас: Как настроить пользовательскую страницу 404 для приложения Kohana v3

Я думаю, что это относится к Kohana 3, хотя.Я думаю, что вам нужно использовать HTTP_Exception_??? и execute() вызывается в index.php по умолчанию (Request::factory(), а не Request::instance(). Я думаю, что вы можете решить это оттуда.

...