기존에 음악 스트리밍을 만들면서 한글 꺠짐을 해결한 적이 있다.
그 때는 jsp 내부에서 path를 server로 보내 해당 path의 mp3을 가져와서 html문서의 음악 플레이어로 파일을 보냈다.
이런 경우는 request.(~) 를 사용하지 않기에 2개의 파일을 변경해야한다.
$TOMCAT_PATH/conf 의 server.xml과 web.xml을 변경해야 한다.
GET방식의 포팅은
server.xml에서
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
을 해줘야 한다.
POST방식의 포팅은
web.xml에서
> 톰캣 7.0 기준
<filter>
<filter-name>setCharacterEncodingFilter</filter-name>
<filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<async-supported>true</async-supported>
</filter>
와
<filter-mapping>
<filter-name>setCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
주석을 지운다.
>spring framework는 다르므로 검색이 필요하다
> 기본적으로 jsp는 utf-8로 헤더에 정의되어 있다는 가정!
문제는 지금부터 tomcat의 8080을 사용하는 것이 맘에 안들었기에
아파치 톰캣 연동을 했는데 대부분 mod_jk.so를 사용한다.
그래서 mod_jk를 사용한 연동을 했다.
> 아파치, 톰캣 연동에는 3가지 방식이 있다
> tomcat-connectors-1.2.37-windows-i386-httpd-2.2.x은 검색하면 받을 수 있다.
하지만 여전히 한글 path가 %~ 로 꺠진다.
삽질 끝에.. 해결방법은
추가적으로 server.xml에서 AJP(연동시 사용하는 port)에도 utf-8 포팅이 필요했다.
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="utf-8"/>
그럼 수고~
> http://kyuhyuk.kr/m/post/331
> http://blog.daum.net/_blog/BlogTypeView.do?blogid=0SYfl&articleno=184&categoryId=15®dt=20100313125200
'시행착오' 카테고리의 다른 글
EMS 수정 (0) | 2015.04.03 |
---|---|
Hadoop file IO (0) | 2015.01.28 |
canvas 삽질 정리 (0) | 2015.01.15 |
블로그에 코드 넣기 (0) | 2015.01.08 |
Jersey 활용기 (0) | 2015.01.08 |