묻고답하기
리눅스에서 윈도우로 계정이전시 한글첨부파일 인식
2010.10.05 15:00
몇년간 시도해왔는데... 어렵습니다.
인제 용기내서 다시한번 시도해보고자 합니다.
질문 올렸는데 답이 없어서 다시한번 질문 올려봅니다.
XE를 리눅스서버에 설치되어있는데 제 컴퓨터의 APM기반으로 이전하는데 일어나는 문제입니다.
일단 마이그레이션툴로 이전시 -- 한글 미디어 첨부파일이 다 사라져버립니다. 게시물에서 첨부파일 자체가 없는걸로 나옴..
그래서 이방법은 포기...
리눅스 계정에서 db 덤프해서 익스포트하고 계정폴더 dump해서 윈도우에서 폴더풀고 db임포트하고 db.config.php던가요. 그거수정하는방식으로 마이그레이션 했습니다. ( 압축시대라는 utf-8지원 프로그램으로 압축풀었고 한글파일 깨지지않고 정확한 경로에 정확한 이름으로 있는거 확인함)
다른거 다 정상작동되나 한글이름의 미디어파일 ( 예: 목걸이.JPG, 댄스.WMA ) 이런 파일들을 클릭하면 "요청한 파일을 찾을 수 없습니다"
라고 나오는 문제입니다. 혹은
다른 한글파일은 잘되는데 미디어파일만 그러네요.
제가 최근 삽질해서 알아낸 결과는 db문제와 관련이 있는것같습니다. 그런데
이게 db익스포트나 임포트할때 잘못된건지.. 아니면 아파치 서버의 한글파일인식문젠지 알수가 없다는것입니다.
자세한 증상은 이렇습니다.
XE의 경우를 예로 들어서.. 한글첨부파일의 경우 EXE파일이나 ZIP파일등의 파일등은.. xe_files라는 디비항목을 보면
source_filename uploaded_filename
이렇게 된 부분에 소스파일네임이 씨디락구별법.zip 라고하면 업로디드 파일네임은 ./files/attach/binaries/54/117/dc3c6156da0c6837dfb...
이런식으로 말하자면 암호화라고 해야하나요 이렇게 변환되어 나옵니다.
그런데..미디어파일의 경우 예를 들어 목걸이.jpg라면.. 업로디드 파일네임도 변하지 않고 목걸이.jpg 이렇게 나옵니다.
문제는 이런 디비구조가... 리눅스서버에서는 잘 돌아가는데... 이 디비를 익스포트해서 윈도우용 apm7에서 임포트한후 돌리면
xe에서 첨부파일 클릭시 요청하신파일을 찾을 수 없다고 나옵니다.
테스트를 위해 APM에서 한글미디어파일을 첨부해보니.. 리눅스서버와는 다르게 목걸이.JPG가 리눅스에서처럼
목걸이.JPG로 디비에서 나타나는게 아니고 다른 ZIP이나 EXE등의 파일들처럼
./files/attach./files/attach/binaries/54/117/dc3c6156da0c6837dfb
요런식으로 나온다는겁니다. 그리고 첨부파일 클릭하면 잘 다운되고 보여지구요.
이 문제는 어디를 손봐야하는건지요? 아파치를 손봐야하나요? 아니면 DB를 손봐야하나요?
DB를 손볼경우 일일이 파일을 바꾸지 않고 일괄로 처리하는 방법은 없을지요?
제 글을 이해하시기 쉽도록 디비를 캡쳐한 사진을 올려드립니다.
맨위의 목걸이.JPG는 윈도우 APM에서 글을 작성했을때 나타나는 디비의 내용이고
그 밑에 내용들은 전부 리눅스에서 돌아가던 DB를 임포트했을때나타나는 화면입니다.
리눅스는 서버는 phpMyAdmin 2.6.4 , MySQL 5.0.67
에서 익스포트했습니다.
한가지 의심할만한것은 전에 리눅스환경의 euckr상황에서쓰던 제로보드4를 마이그레이션툴로 xml로 보낸다음
utf8환경의 리눅스에서 xe설치하고 마이그레이션툴로 xml임포트해서 복원한겁니다. 이상황에서 작동완벽함..
그런데 위의 리눅스 xe를 다시 윈도우 apm으로 계정이전시.. 마이그레이션툴로는 더 문제 심각... 덤프떠서 받는방법으로는
한글 미디어파일만 클릭시 요청하신 파일을 찾을 수 없다고 나옵니다.
물런 첨부파일 경로등은 디비와 동일한 경로에 파일도 정확한 이름으로 들어가있습니다.
참 사용한 apm은 깨비홈서버 이구요. APMSETUP, 오토셋등도 마찬가지 현상이네요.
리눅스와 윈도우 둘다 uft8환경입니다.
첨부파일의 맨위부분은 윈도 apm에서 글작성했을때의 디비모습- 영문숫자로 이름변환됨
그 아래부분들은 리눅스 uft-8환경에서의 디비모습- 한글미디어파일이름이 한글로 그대로 있음.