Tomcat URL Encoding 설정
tomcat 문서에 의하면 URL을 디코딩은 지정하지 않으면 디폴트로 ISO-8859-1으로 지정된다. 그러기에 설정을 하지 않고 한글을 GET로 정보를 넘기게 되면 깨진다. 반면에 POST로 전달되면 HTTP body의 입력 스트림의 디폴트는 UTF-8를 디코딩되기에 문제가 없다.
이는 tomcat 설정에 엔코딩을 변경해 주면 문제는 해결된다. {tomcat 설치 폴더}/conf/server.xml에 아래 <Connector>
요소에 아래와 같이 URIEncoding을 UTF-8로 설정한다.
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8" />
아파치와 연결하기 위해 mod_jk를 사용할 경우에는 mod_jk 설정부분에도 위와 동일하게 변경한다.
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>
참조
최종 수정 : 2021-08-30