어떤 때는 한글 처리가 되고 어떤 때는 한글 처리가 안되어 분석해 보니 POST 방식으로 전달하는 한글은 잘 처리되지만 GET 방식으로 전달하는 한글은 처리를 못하였다. 개발중에...

tomcat 문서를 살펴보면 HTTP body의 입력 스트림은 기본으로 UTF-8을 이용하여 디코딩한다. 반면 URL은 ISO-8859-1으로 디코딩한다.
브라우저에서 Form 데이터는 기본설정으로 UTF-8 인코딩하므로 Form으로 전송되는 POST는 문제가 없었던 것이다. 그럼 tomcat의 설정에서 URL 인코딩 방법을 변경하기만 하면 문제는 해결된다.

conf/server.xml 에 다음과 같은 부분에 아래와 같이 URIEncoding을 UTF-8로 설정한다.
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="UTF-8"/>




덧글

댓글 입력 영역