본문 바로가기
컴퓨터공학/스프링

에러 페이지 만들기

by 유리병 2023. 12. 27.

목차


    에러 페이지를 만드는 이유

    위와 같이 에러페이지를 그대로 노출하면 해킹에도 취약해지고 고객들의 신뢰에도 문제가 생길 수 있다.

    때문에 오류 페이지를 따로 처리해 줘야 한다.

     

    에러 코드에 따른 페이지 지정

    web.xml에 에러 코드에 대응되는 페이지를 맵핑

    <!-- 404 에러가 나면 err/error_404.jsp 페이지로 이동-->
    <error-page>
    	<error-code>404</error-code>
    	<location>/WEB-INF/views/error/error_404.jsp</location>
    </error-page>
    
    <!-- 500 에러가 나면 err/error_500.jsp 페이지로 이동-->
    <error-page>
    	<error-code>500</error-code>
    	<location>/WEB-INF/views/error/error_500.jsp</location>
    </error-page>

     

    에러 발생시 이동할 페이지 생성

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <html>
    <body>
    	<h1>404 에러페이지입니다.</h1>
    </body>
    </html>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <html>
    <body>
    	<h1>500 에러페이지입니다.</h1>
    </body>
    </html>

     

     

    에러 유발 코드 작성

    @GetMapping("err")
    public String error() {
    	return "error/errorcode";
    }
    <!-- WEB-INF/views/error/errorcode.jsp -->
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <html>
    <body>
    	<!-- 여기 일부로 ;을 빼먹으면 500에러가 발생한다. -->
    	<% int a = 5 %>
    </body>
    </html>

     

     

    동작 확인

    404 에러 유발

    localhost:8080/alksjflkasdjf;as 이렇게 없는 주소를 입력하면 404에러페이지로 이동한다

     

    505 에러 유발

    error가 발생하는 jsp로 이동하는 주소로 들어가면 아래와 같이 505 에러 페이지로 이동한다.