Tomcat 서버 로케일 설정
Windows 에서 Tomcat 9 서버를 CMD 에서 시작하면 화면에 뿌려지는 로그들이 한글이 깨진채 표시가 된다. 이것은 한글 로케일로 되어 있어서 Tomcat 서버가 한글로 뿌려주지만 CMD 가 한글을 표시할 수 없어 생기는 문제다.
이 문제를 해결하는 방법은 간단하다. CMD 의 로케일을 다음과 같이 변경해 주면 된다.
1 |
chcp 65001 |
65001 은 UTF-8 을 의미한다. 이렇게 변경한 후에 Tomcat 을 재 실행하면 한글이 제대로 표시 된다.
하지만 Tomcat stdout 로그를 영문으로 바꾸고자 한다면 위 방법으로 되지 않는다. 이것은 Tomcat 서버가 Windows 10 의 기본 로케일을 자동으로 인식해 적용하기 때문이다. 만일 이것을 영문으로 바꾸고자 한다면 다음과 같이 해야 한다.
1 |
set "JAVA_OPTS=%JAVA_OPTS% -Duser.language=en -Duser.region=US" |
JAVA_OPTS 환경 변수에 user.language, region 을 정의해 주면 된다. 그러면 Tomcat 서버가 구동될때에 JAVA 파라메터로 추가해 로케일을 적용해 주면 UTF-8 에 Windows 10 에 로케일을 버리고 English 언어와 US 로케일이 적용되어 영문으로 로그가 출력된다.