보통 라우트에 등록되지 않은 리소스를 요청할 경우
NotFoundHttpException 예외와 같은 NOT FOUND 화면이 노출이 됩니다.
하지만 production (운영) 환경에서는 이런 예외 케이스가 발생한 경우 어떤 부분이 잘못되었는지를
사용자에게 표시하는 별도의 에러 처리 화면을 제공하는 것이 바람직하다고 한다.
라라벨에서는 이를 처리하고자 하는 HTTP 응답 코드에 맞는 에러 화면을 만들 수 있는 기능을 제공한다고 합니다.
> laravel new laravel-error
우선 예제를 만들기 위해서 라라벨 프로젝트를 생성합니다.
.....
INFO Application key set successfully.
INFO Application ready! Build something amazing.
정상적으로 프로젝트가 생성이 되었다면 cd 명령어나 사용하는 IDE 툴에서 해당 경로로 이동합니다.
resources/views 폴더로 이동해 errors 폴더를 새로 생성합니다.
errors 폴더가 생성이 되었다면, 처리하고자 하는 HTTP 응답 코드 기준으로
{HTTP 응답 코드}.blade.php 파일을 생성합니다.
생성한 blade.php에서 보여주고자 하는 view 페이지를 작성하면 됩니다.
글쓴이 같은 경우는 아래 페이지에서 이미 되어있는 코드를 가져와 붙여볼려고 한다.
⚠ 이번 포스팅에 올린 404 not found 페이지 저작권은 bootday.com에 있습니다.
https://www.bootdey.com/snippets/download/404-error-page-with-blur
php artisan serve
코드 작성 후 위 구문 명령어를 통해 실행해보자.
따로 세팅한게 없다면 root (localhost:8000)로 들어왔을 때 라라벨의 기본 welcome.blade.php가 노출이 될 것이다.
별도로 routes에 엮여있지 않은 url을 검색하면 정상적으로 아까 작성한
404 NOT FOUND 템플릿 디자인 화면을 볼 수 있다.
그 외, HTTP 응답 코드에 대한 페이지는 개발자의 입맛에 맞게 errors 폴더에 파일을 생성해주면 된다.
'언어 & 프레임워크 > PHP' 카테고리의 다른 글
[Laravel] timezone 설정 (0) | 2023.02.10 |
---|---|
[Laravel] window 환경에서 프로젝트 생성 시 에러 (0) | 2022.11.09 |
PHP 스프레드 연산자 (0) | 2022.11.09 |
페이징 성능 개선 - No Offset (0) | 2022.09.26 |
PHP PDO json_encode strings as numbers 반환 오류 (2) | 2022.09.20 |