윈도우에서 톰캣을 설치해서 'startup.bat'을 클릭하면 톰캣 서버 프로그램이 실행되는데
실행 로그에서 한글이 깨져서 출력되는 경우가 있다.
이를 해결하기 위해선
- 톰캣 자체의 문제인지
- 아니면 윈도우 콘솔 출력 상에서의 문제인지
에 따라 다른 해결방법이 나올 텐데,
이번 경우엔 '윈도우 콘솔 출력 상에서의 문제' 일 경우 때 해결방법을 다루었다.
일단 윈도우 콘솔 출력에서의 문제인지 확인하는 방법은 다음과 같다.
1. 톰캣 로그 폴더 logs에 들어가서 톰캣 자체 로그는 문제없이 출력되는지 확인
이 경우엔 톰캣 로그 자체는 글자 깨짐 없이 만들어지고 있음을 알 수 있다.
2. 톰캣이 로그를 생성할 때 내용 파일의 인코딩 설정이 무엇인지 확인한다
UTF-8 임을 확인
3. 톰캣 실행 콘솔 창 설정 들어가서 '현재 코드 페이지' 설정 확인하기
현재 코드 페이지가 인코딩 설정이다.
인코딩 설정이 949로 UTF-8과 일치하지 않는다
이로 인해 윈도우 콘솔창에서 출력 시 폰트가 깨진 것이다.
-> 해결방법은 윈도우 콘솔창에서 출력 시 사용할 인코딩 설정을 'UTF-8'으로 설정해주는 것이다.
4. 윈도우 레지스트리 설정에 들어간다
5. Console 폴더에서 'Tomcat' 폴더를 생성해준다
* 이때 유의해야 할 점: 폴더명은 '콘솔 창의 이름'과 동일하도록 생성해줘야 함. ex) Tomcat
폴더를 생성하는 방법은 '마우스 우클릭 -> 새로 만들기 -> 키(K)'
6. 폴더를 만들었으면 안에서 설정 내용을 만들어준다
7. 설정을 클릭해서 세부사항을 작성하고 저장한다
8. 톰캣을 재시작하고 로그를 확인해본다
-> 이제 한글 깨짐 없이 정상적으로 출력된다.
*톰캣 콘솔 창 설정에 들어가 보면 이제는 코드 페이지가 UTF-8로 뜸
#정리
톰캣이 로그를 작성할 때 인코딩 설정과
윈도우 콘솔 창이 내용 출력할 때 인코딩 설정이 일치하지 않아 충돌이 난 경우엔
이와 같은 방법으로 해결할 수 있다.
*(Tip) 레지스트리 편집기 화면에서 나중에 바뀌는 것들