[Spring] 웹어플리케이션의 Whitelabel 오류 페이지 비활성화
- IT/PROGRAMMING
- 2019. 2. 19. 02:10
스프링으로 웹어플리케이션을 작성하면 기본적인 오류화면은 아래와 같이 "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 부분에는 빈 메시지를 설정하는 것으로 보인다.
'IT > PROGRAMMING' 카테고리의 다른 글
[Java] Iterable을 stream으로 처리하기 (0) | 2019.02.20 |
---|---|
[Spring] spring-boot 버전 1.X와 2.X에서 Page 객체를 ObjectMapper(Jackson) 사용시 차이점 (0) | 2019.02.19 |
[Java] 클래스에 정의된 제너릭(generic) 타입의 Class를 얻는 방법 (0) | 2019.02.12 |
[Spring] @RequestMapping의 wildcard 패턴 **의 값을 배열로 얻기 (1) | 2019.02.09 |
[Java] IP주소가 loopback(127.0.0.1)인지 확인하는 방법 (0) | 2019.02.08 |