앞으로의 대세는 UTF8이다. 현재는 EUC-KR과 UTF-8 페이지가 많지만

중국어나 아랍어등 다른 나라의 언어를 위해서 UTF-8 이 쓰일  것이다. 그러므로
오늘 알아 볼 것은 아파치, 톰캣, JSP 환경에서 UTF-8 변환을 어떻게 하느냐이다




1. 톰캣 5.5

%TOMCAT_HOME%conf/server.xml 에서


<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpar
eThreads="75" enableLookups="false" redirectPort="8443" acc 100" connectionTimeout="20000"
disableUploadTimeout="true"
URIEncoding="UTF-8" />

 추가


2. JSP


<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

<%
request.setCharacterEncoding("utf-8");
%>   


(rc = crz.SetCharacterEncoding(hc,"utf-8"); <== 내부 API 이므로 다른 분들은 필요 없음)


3. Java Script


URI 넘길때 UTF8 으로 넘기는 방법

q = encodeURIComponent(q); 
//UTF-8 방식일 경우 추가



4. URL 에서 characterset 확인


1. akc.jsp?q=가 <-- 한글
2. akc.jsp?q=%B0%A1 <-- EUC_KR 타입 URI (엠파스 주소창에서
확인)

3. akc.jsp?q=%EA%B0%80 <-- UTF8 타입 URI (구글 주소창에서 확인



5. Apache2

%APACHE2_HOME/conf/httpd-languages.conf 에서 해줘야 되는줄 알았는데
톰캣에서 했으면 굳이 할 필요 없다.
하지만 PHP를 쓴다면 AddDefaultCharset 을 해주길 바란다 (자세한건 검색)

6. 해보진 않은것들 참고사항

JSP

new String(param1.getBytes("8859_1"), "euc-kr");  등등..


<%@ page contentType="text/html; charset=euc-kr" %>
<%@ page import="java.net.URLEncoder" %>
<html>
<head><title>URLEncoder</title></head>

<body>
<%
  String value = "JSP하자";
  String encoded = URLEncoder.encode(value);
  response.sendRedirect("filename.jsp?name=" + encoded);
%>
</body>
</html>

이상이 삽질하며 알아낸 것들이다

+ Recent posts