안녕하세요, 하마연구소 입니다.
스프링으로 웹어플리케이션을 작성하면 기본적인 오류화면은 아래와 같이 “Whitelabel Error Page”가 보입니다.
![하마연구소 - [Spring] 웹어플리케이션의 Whitelabel 오류 페이지 비활성화 | 2 1](https://i0.wp.com/blog.hippolab.com/wp-content/uploads/2025/05/spring_whitelabel.jpg?resize=606%2C231&ssl=1)
이 오류화면을 없애고 싶다면 아래와 같이 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을 수정해보진 않았습니다.
![하마연구소 - [Spring] 웹어플리케이션의 Whitelabel 오류 페이지 비활성화 | 4 3](https://i0.wp.com/blog.hippolab.com/wp-content/uploads/2025/05/spring_notfound_1.jpg?resize=666%2C175&ssl=1)
만약 WAS를 Jetty로 변경하면 아래와 같이 브라우저 기본 오류 페이지를 확인할 수 있습니다.
Jetty는 HTTP 오류 코드만 보내고 body 부분에는 빈 메시지를 설정하는 것으로 보입니다.
![하마연구소 - [Spring] 웹어플리케이션의 Whitelabel 오류 페이지 비활성화 | 6 5](https://i0.wp.com/blog.hippolab.com/wp-content/uploads/2025/05/spring_notfound_2.jpg?resize=666%2C366&ssl=1)
지금까지 스프링의 Whitelabel 페이지를 없애는 방법을 알아보았습니다.
감사합니다.