[Spring] 웹어플리케이션의 Whitelabel 오류 페이지 비활성화
안녕하세요, 하마연구소입니다.
스프링으로 웹어플리케이션을 작성하면 기본적인 오류화면은 아래와 같이 "Whitelabel Error Page"가 보입니다.
이 오류화면을 없애고 싶다면 아래와 같이 application.properties 파일에 설정을 추가하면 됩니다.
위 설정은 ErrorProperties.Whitelabel로 바인딩되는데, 기본값은 true 입니다.
이렇게 Whitelabel 오류 페이지를 비활성화 시키면 아래와 같이 오류페이지가 바뀐것을 볼 수 있습니다.
spring-boot-starter-web 기본 WAS인 Tomcat의 오류화면이 보입니다.
더 안 이쁘고, 심지어 톰캣 버전 정보도 보입니다.
이 톰캣 오류 정보를 표시하지 않으려면 톰캣 서버 설정 파일인 "server.xml"을 설정해야합니다.
개인적으로 설치형 Tomcat의 server.xml을 수정하여 오류 페이지를 변경한 경험은 있지만, spring-boot의 embedded tomcat의 server.xml을 수정해보진 않았습니다.
만약 WAS를 Jetty로 변경하면 아래와 같이 브라우저 기본 오류 페이지를 확인할 수 있습니다.
Jetty는 HTTP 오류 코드만 보내고 body 부분에는 빈 메시지를 설정하는 것으로 보입니다.
지금까지 스프링의 Whitelabel 페이지를 없애는 방법을 알아보았습니다.
감사합니다.
스프링으로 웹어플리케이션을 작성하면 기본적인 오류화면은 아래와 같이 "Whitelabel Error Page"가 보입니다.
이 오류화면을 없애고 싶다면 아래와 같이 application.properties 파일에 설정을 추가하면 됩니다.
server.error.whitelabel.enabled=false
위 설정은 ErrorProperties.Whitelabel로 바인딩되는데, 기본값은 true 입니다.
package org.springframework.boot.autoconfigure.web; . . . public class ErrorProperties { . . . public static class Whitelabel { /** * Whether to enable the default error page displayed in browsers in case of a * server error. */ private boolean enabled = true; public boolean isEnabled() { return this.enabled; } public void setEnabled(boolean enabled) { this.enabled = enabled; } } }
이렇게 Whitelabel 오류 페이지를 비활성화 시키면 아래와 같이 오류페이지가 바뀐것을 볼 수 있습니다.
spring-boot-starter-web 기본 WAS인 Tomcat의 오류화면이 보입니다.
더 안 이쁘고, 심지어 톰캣 버전 정보도 보입니다.
이 톰캣 오류 정보를 표시하지 않으려면 톰캣 서버 설정 파일인 "server.xml"을 설정해야합니다.
개인적으로 설치형 Tomcat의 server.xml을 수정하여 오류 페이지를 변경한 경험은 있지만, spring-boot의 embedded tomcat의 server.xml을 수정해보진 않았습니다.
만약 WAS를 Jetty로 변경하면 아래와 같이 브라우저 기본 오류 페이지를 확인할 수 있습니다.
Jetty는 HTTP 오류 코드만 보내고 body 부분에는 빈 메시지를 설정하는 것으로 보입니다.
지금까지 스프링의 Whitelabel 페이지를 없애는 방법을 알아보았습니다.
감사합니다.
댓글
댓글 쓰기