포럼

요새 한국 호스팅이 EUC-KR에서 & 사이트들이 XE나 그누보드, 킴스보드 같은 UTF-8 관련 많이 넘어가면서

프로그래밍에 지식이 없는 분들도 UTF-8 인코딩을 이용한 프로그램을 수정 하는 일이 많아 지고 있습니다.

+ 로 관련 지식이 없는 분들은 UTF-8 인코딩으로 쓰여진 프로그램들을 수정할 때 Windows 의 기본 텍스트 에디터 툴인

메모장을 이용하는 경우가 많은데요.

그로 인해서 header modify 에러로 곤란을 겪으시는 분들이 많아지고 있습니다.


UTF 인코딩의 경우 8, 16, 32등 여러 방식이 있는데 이런 문서들은 저장을 할때 문서의 제일 앞부분에

바이트의 순서 문자 (Byte order Mark - 일명 BOM문자)를 문서 제일 앞에 추가하여 저장 됩니다. 

그 이유는 프로그램들이 해당 문서가 어떤 인코딩 방식으로 쓰여 있는지 판별하기 위해,

또 바이트의 순서를 찾기 위해 BOM(UTF-8의 경우 EF BB BF)문자가 사용됩니다.


근데 이 BOM 문자가 일부 프로그램, 그리고 일부 OS 에서 혼란을 야기시킵니다.

XE를 이용하는 우리가 접할 수 있는 가장 흔한 예로는 PHP의 header modify 오류와 

문서 include 이용 했을 때 생기는 알수 없는 여백 문제 입니다.


PHP 관련 오류는 PHP가 유니코드에 대한 지원이 느려서 그런건데요..

일단 PHP관련 셋팅을 할때 서버 엔지니어가 --enable-zend-multibyte 옵션을 추가해주면 간단히 해결됩니다만

아직까지 한국의 호스팅 업체에서 --enable-zend-multibyte 를 기본으로 추가시킨 업체를 보진 못했습니다.

제가 아직까지 못봤을 경우가 크지만요 (...)


말이 좀 엇나갔는데.. 

메모장의 경우 이 BOM 문자를 UTF-8 방식으로 저장할때 자동으로 삽입해 줍니다. 

그래서 session_start 나 header 같이 선언하기전에 아무것도 출력하지 않아야되는 경우 BOM문자가 삽입되어있기 때문에

에러가 발생하게 됩니다.

그렇기 때문에 서버 셋팅을 다시 할 수 없는 이상 

UTF-8 로 저장할때는 메모장 이외의 notepad++ 나 국산소프트웨어 editplus 같은 프로그램을 이용해주셔서

BOM이 없는 UTF-8 로 저장해주셔야 되는 것입니다.!!




PS. 그나저나 에디터가 글꼴이라던지 크기를 마음대로 바꾸네요... (...)

PS2. 그냥 질답 게시판 관련 문의가 꽤 빈번하게 올라오길래 써봤습니다.

글쓴이 제목 최종 글
jiom XE, document 모듈의 속성  
Lansi 댓글 권한이 뚫리는 거 같네요 [4] 2014.01.22 by Lansi
영흥도우럭 메인페이지 1분캐싱설정이 대단한거네요 ㅎㅎ [4] 2014.01.22 by 야옹이님
delphiXE2 '다운로드'에 기능 추가를 건의해 봅니다. [6] 2014.01.21 by XE
treasurej 공홈에 올라가기 버튼 하나만 달아주세요^^ [2] 2014.01.21 by 야옹이님
휘즈 이번 1.7.4 버전에서는  
샤로우 CDN서버 기능제거와 관련해 유져로서의 생각 [5] 2014.01.20 by EnterTM
푸시아 xe 허브 방문 [7] 2014.01.20 by Gunmania
건즈 xe 설치 폴더 바꾼 후 경로 문제는 어떻게 하시나요? [7] 2014.01.20 by 건즈
Lansi XE 개발 질문 받아요 [98] 2014.01.19 by Lansi
Canto 왜 PHP(UTF-8)를 수정할때 메모장을 이용하면 안되는가? [4] 2014.01.19 by explode
Lansi 폼 필터로는 왜 파일을 보내지 못할까요? [12] 2014.01.19 by Canto
이즈야 묻고답하기 게시판 제목에 제한을 둬야 할 듯 [3] file 2014.01.18 by 야옹이님
착한부산남자 xe.1.7.3.8.ko.changed.tar.gz 로 패치만 적용했는데.. [3] 2014.01.18 by 착한부산남자
Lansi 어떤 방식이 더 좋을까요? [3] 2014.01.17 by XE
야옹이님 아니.. 무슨 IE는 버전마다 따로 노냐....ㄷㄷ (+ 푸념) [23] 2014.01.17 by 야옹이님
착한부산남자 xe는 utf-8 사용하나요? [3] 2014.01.17 by 착한부산남자
2donggalbi 그룹 출력 변수 최신버젼에서는 작동안하나요? [4] 2014.01.17 by ForHanbi
w.D.IW 짧은 도메인 그대로 사용하기(/xe 떼어내기) [3] 2014.01.17 by LI-NA
참치.k 다국어 활성화 시켰다가 속 썩히는줄 알았네요 [9] file 2014.01.16 by JHRun