강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

[ JSP ] 브라우저 인코딩이 자동으로 한글이 안되는 경우 해결법
작성자 : 99 단국강토
등록날짜 : 2009.01.02 09:45
2,759

# 브라우저 인코딩이 자동으로 한글이 안되는 경우 해결법

 

euc-kr 이나 ksc5601 을 사용할 경우 브라우저의 한글은 잘 나온다.

대신 확장한글을 표시할 수 없어서 ?? , ?d , ?? 같은 글자는 ? 로 깨어져 나온다.

소스보기를 해도 깨진 상태 그대로다.

MS949 를 사용하면 확장한글이 제대로 소스보기에 나오지만 브라우저의 인코딩이 한글
이 아닌 서유럽 (ISO) 로 자동지정되어서 마우스 오른버튼 메뉴의 인코딩을 통해서
한글로 재지정하는 등의 불필요한 작업이 필요할 경우가 종종 있다.

이런 문제의 원인은 Tomcat 의 jsp를 servlet으로 변환하는 과정에서 @page 의
contentType 속성에 지정한 charset 의 인코딩이 적용되기 때문에 euc-kr 이나
ksc5601의 경우 client 로 보내지는 소스 중의 확장한글이 깨어지며, MS949 의 경우
서버쪽에서 확장한글의 처리는 잘 하지만 브라우저에서 소스를 받을 때 header 의
Content-type 이 브라우저가 인식하는 인코딩을 벗어날 경우 Latin-1(ISO-8859-1) 로
자동지정하기 때문이다.

MS949 라는 인코딩은 Cp949 라고도 표현되며  MS 운영체제에서 지원하는 통합
완성형을 지원한다.

대략 짐작을 했겠지만 이 두 가지 문제점의 해결 방법은 다음과 같다.

서버쪽 한글처리는 MS949 로 정하고, 브라우저의 한글처리는 ksc5601, euc-kr 등으로
한다. 즉 서버쪽은 @page 의 contentType 속성을 charset=MS949 로 <head> 태그 내의
<meta> 태그에서 Content-type 의 값을 charset=ksc5601 로 주면 브라우저쪽의
한글처리를 마무리지을 수 있다.

코드는 다음과 같다.

 

<%@ page contentType="text/html;charset=MS949" %>
<html>
<head>
<META HTTP-EQUIV="Content-type"
CONTENT="text/html;charset=ksc5601">
    <title>한글 인코딩</title>
</head>
<body>
"맛있는 케??"에서 "케??"은 표준어가 아닙니다. 표준어는 "케이크" 입니다.
</body>

</html>

 

[참고]

 

korea.internet.com 의 HTML에서의 문자 집합
http://korea.internet.com/channel/content.asp?nid=22838&cid=187#start 

 

자바토피아 이창훈님 글
http://okjsp.pe.kr/bbs?act=VIEW&bbs=docs&seq=24333&pg=0 

출처:http://okjsp.pe.kr

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
2955 # 제목을 입력하는 곳 (넓은 사이즈) M 최고의하루 01.03 2937
2954 Editplus v3.0 (문서 편집기) M 최고의하루 01.03 2314
열람중 [ JSP ] 브라우저 인코딩이 자동으로 한글이 안되는 경우 해결법 99 단국강토 01.02 2760
2952 [ JS ] 버튼을 이용한 이미지 넘기기 ( 이미지 리스트 ) 99 단국강토 01.02 3579
2951 [AJAX] 자바스크립트에서 XML 파일 읽어 오기 99 단국강토 12.30 2412
2950 [AJAX] DOMDocument 에서 selectSingleNode 을 이용한 XML 노드 (Node) 찾기 99 단국강토 12.30 2530
2949 [ JS , AJAX ] DOM 크로스브라우징 : 원하는 노드 찾기 [ createDocument , DOMDocument ] M 최고의하루 12.26 2561
2948 외부링크 금지하는 방법 M 최고의하루 12.26 2508
2947 오늘 하루 창 열지 않기 M 최고의하루 12.24 2428
2946 DLL화일 레지스트리에 등록 또는 삭제 하기 M 최고의하루 12.24 2221
2945 팝업창 닫고 프레임이 있는 부모창에서 원하는 페이지로 이동하기 M 최고의하루 12.23 3194
2944 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-2 M 최고의하루 12.23 2378
2943 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-1 M 최고의하루 12.23 3075
2942 [펌] 제12강 - 방명록 만들기 I M 최고의하루 12.23 3056
2941 [펌] 제13강 - 방명록 만들기 II M 최고의하루 12.20 2114
2940 [펌] 제14강 - 방명록 만들기 III M 최고의하루 12.20 2506
2939 [펌] 제15강 - 방명록 만들기 IV M 최고의하루 12.19 2214
2938 [펌] 제16강 - 방명록 만들기 V M 최고의하루 12.19 2107
2937 제17강 - 방명록 만들기 VI M 최고의하루 12.18 2937
2936 [펌] 제18강 - 방명록 만들기 VII M 최고의하루 12.04 2563
2935 아작스관련 코드 링크들 M 최고의하루 12.04 2400
2934 UTF-8 기준, 한글을 초성,중성,종성으로 분리하기 13 김영철 01.14 3453
2933 APM에서 utf-8 구현 방법 13 김영철 01.14 2977
2932 utf-8 사용시 설정 - db의 입출력을 완벽하게 utf-8 13 김영철 01.14 2265
2931 PHP로 작동하는 RSS 읽는 함수 13 김영철 01.14 2408
2930 EditPlus V2.30 되면서 눈에띄는 달라진점 7가지 13 김영철 01.14 2858
2929 오라클 캐릭터 셋 변경 M 최고의하루 01.12 3037
2928 체크박스 배열을 edit 수정페이지로 불러오기 M 최고의하루 01.12 2505
2927 config 배열. 99 단국강토 01.08 2310
2926 Rewrite 99 단국강토 01.08 2117
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취