До выхода релиза 5 версии Laravel осталось недолго и я начал изучать возможности новой версии. Первое что мне захотелось попробовать, это указание своей 404 станицы (а в дальнейшем и других страниц с ошибками). Реализация по 4 версии выдала ошибку и тут пришлось углубится в изучение.
Пробегаясь взглядом по папкам приложения сразу была замечена папка app/Exceptions и файл Handler.php. Это и дало направление куда «копать».
В вышеупомянутом файле присутствовал метод render который использовал исключения. Не буду тянуть кота за шарики и покажу измененный метод
Подключаем
1 |
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; |
и добавляем в метод render строку (певой строкой метода)
1 |
if($e instanceof NotFoundHttpException) return response()->view('errors.404', [], 404); |
Остается только создать файл шаблона страницы ошибки в resources/views/errors c именем 404.blade.php (или по вашему усмотрению).
Таким образом, я одной строчкой сделали обработку 404 ошибки. По образу и подобию данной обработки вы можете добавить свои обрабочики.