TOMCAT/톰캣 에러 페이지 HTML 파일로 설정하기

톰캣 에러 페이지 HTML 로 설정하기

정윤재 2010. 6. 18. 16:11


톰캣에서 에러 페이지 설정을 할때

tomcat 설치경로/conf/web.xml 파일에

        <error-page>
                <error-code>400</error-code>
                <location>/jsp/inc/400.jsp</location>
        </error-page>
        <error-page>
                <error-code>401</error-code>
                <location>/jsp/inc/401.jsp</location>
        </error-page>
        <error-page>
                <error-code>403</error-code>
                <location>/jsp/inc/403.jsp</location>
        </error-page>
        <error-page>
                <error-code>404</error-code>
                <location>/jsp/inc/404.jsp</location>
        </error-page>
        <error-page>
                <error-code>500</error-code>
                <location>/jsp/inc/500.jsp</location>
        </error-page>

이렇게 JSP 파일로 설정을 해줘야 한다.

하지만 우리는 실서버 환경에서 보통 아파치와 연동해서 사용하기 때문에

HTML 파일이면 아파치 오류 페이지, 톰캣 오류 페이지 둘다 쓸수 있을 것이다.

(톰캣이 HTML 파일을 읽을수 있어서 HTML 을 오류 페이지로 읽어 들일 수

있다고 생각하는데 그렇지 않더라.)

그래서 해결책은 위의 web.xml 을 (html 파일로) 

        <error-page>
                <error-code>400</error-code>
                <location>/jsp/inc/400.html</location>
        </error-page>
        <error-page>
                <error-code>401</error-code>
                <location>/jsp/inc/401.html</location>
        </error-page>
        <error-page>
                <error-code>403</error-code>
                <location>/jsp/inc/403.html</location>
        </error-page>
        <error-page>
                <error-code>404</error-code>
                <location>/jsp/inc/404.html</location>
        </error-page>
        <error-page>
                <error-code>500</error-code>
                <location>/jsp/inc/500.html</location>
        </error-page>

이렇게 설정한뒤

html 파일 윗부분에

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

<html>
<head>
~~~~~

이런식으로 JSP 헤더를 집어넣어주면 해결된다.

이렇게만 해도 HTML 파일이 JSP 로 읽혀지는 것 같다.