#title 모니위키에서 이미지가 갑자기 표시되지 않는 문제 #keywords bom, moniwiki, DebugJournal 모니위키의 config.php를 수정하다 보면 '''업로드한 이미지가 보이지 않는 문제'''를 겪을 수 있다. 이 페이지는 이러한 문제점의 원인을 분석하고 해결하기 까지의 과정을 정리한 DebugJournal이다. ---- [[TableOfContents]] === 문제 발생 === 모니위키 1.1.3에서 추가된 cachetime 기능을 사용하려고 config.php를 수정하던 중에 갑작스레 '''모니위키에 업로드한 이미지가 보이지 않는 문제'''가 발생하게 되었다. 기존 페이지에서 {{{attachment:image.jpg}}}를 사용한 경우, 이미지 대신 {{{image.jpg}}}라는 문자만 출력되었다. 또한 UploadedFiles 페이지를 열람해봐도 이미지를 확인할 수는 없었다. === 문제가 발생하게 된 원인 파악 === 1. 위키와 서버의 환경 파악 : 모니위키 버전은 1.1.3, 캐릭터셋은 UTF-8을 사용. 서버는 ffcomputing의 무료 계정으로 캐릭터셋은 UTF-8 이용. 서버의 php 및 아파치는 최신버전이다. 1. 문제가 발생하기 전으로 복원 : 변경했던 설정 부분을 지우고 config.php를 계정으로 업로드 1. 전문가에게 문의 : [http://kldp.net/forum/forum.php?forum_id=712 KLDP의 Q&A 게시판]에 문의 1. [http://kldp.net/forum/forum.php?thread_id=44804&forum_id=712 질문글] : 사실 cachetime의 기능에 대한 질문 글을 먼저 올렸는데, 설정을 변경하는 과정에서 이미지가 보이지 않게 되는 문제가 발생하여 질문을 중간에 변경하게 되었다. 1. 원인 파악 1 : '''download.php'''가 오작동 1. 조치 1 : --/var/log/httpd/error_log 파일을 확인해서 문제점 파악하기-- 무료계정에서는 확인 불가능 1. 조치 2 : --config.php에서 $use_resume_download=1;에서 값을 0으로 변경-- 문제 해결 x 1. 원인 파악 2 : config.php의 헤더에 UTF-8문서임을 나타내는 BOM 문자가 삽입되었기에, image 파일의 헤더부분에도 BOM문자가 삽입된 것이다. 그래서 이미지가 문서 취급을 받게 되어 제대로 출력되지 않았다는 분석 결과를 얻음. 이런 상태에서는 '''?action=download&value=파일이름''' 으로 링크가 걸리는 파일은 모두 같은 문제가 발생하게 된다. === 문제 해결 === 곰곰이 기억을 되살려보니 평소에는 NotePad++로 config,php를 편집하다가, 우연히 windows의 NotePad를 사용했던 것이 문제였었다. NotePad는 자동으로 BOM문자를 붙여주기에 이런 해프닝이 발생하게 된 것이다. 이후 Notepad++에서 UTF-8 without BOM 옵션을 활성화 시키고, config.php를 새로 만들어 저장한 뒤 무료계정에 올려서 깔끔하게 문제를 해결했다. ^^ === 얻은 교훈 === * 항상 사용하던 툴만 사용한다! * 설정을 변경할 때는 파일째로 백업해 놓는다. ---- CategoryMoniwiki