지난 몇년동안 삽질하면서 원인을 찾았는데  xe홈페이지에는 아무리 질문을 올려도 답이 하나도 없고

버전업될때마다 혹시나해서 깔아보고 테스트해봐도 개선이 안되서 질문 남깁니다.

 

일단 증상은 리눅스서버에서 sql파일을 내보내기하고 mysqldump를 이용해서 tar파일을 내려받은 다음

윈도apm에서 sql을 불러오기하고 utf-8을 지원하는 압축시대로 압축을 풀어서 계정이전을 하는데...

 

아무리해봐도 한글이름의 미디어파일(jpg, wma, mp3등)만 다운로드시 파일을 찾을 수 없다고 나오는 문제입니다.

다른 한글이름의 zip파일등은 정상다운이 됩니다.

 

그래서 삽질을 해본 결과 제가 알아낸 것은

 

잘되고있는 리눅스 db의 경우db의 xe_files테이블에서 sorce_filename과 uploaded_filename항목의 값이 같네요.

 

문제가되는 윈도우 apm환경의 경우에도 계정이전된 글들의 두 항목값이 같습니다.

그런데 새로 글을 작성해보니 db에 sorce_filename은 한글이지만 uploaded_filename은 영문과 숫자조합이네요 즉

예를 들어 sourcefilename은 목걸이.jpg인데 uploaded_filename 의 경우

 ./files/attach/images/190/351/001/2119c205ce35ff9b8f621713be9485ad.jpg 이렇게 나오는군요.

 

원인은 알겠는데 해결책을 혹시 아시는지요?

 

요점은 리눅스 환경에서는 소스이름과 업로드된파일이름이 한글과 영문 모두 동일하게 디비에 기록된다.

윈도 apm의 환경에서는 영문은 같으나 한글미디어파일의 경우 uploaded_filename값이 바뀐다.

 

그러나 리눅스에서 윈도로 가지고온 계정의 경우

sql을 가져오기하면서 소스이름이 과 업로드이름이 한글임에도 변환되지 않고 그대로기록된다

그래서 실제 파일도 있고 경로에 잘 위치하고 있으나 첨부파일 클릭을 하면 파일을 찾을 수 없다고 나온다.

 

계정 이후로 등록하는 한글파일이름은 정상적으로 변환이되어 디비에 기록되고 첨부파일 다운도 잘된다.

 

이게 제가 지금까지 계속 삽질해서 알아낸 결과인데요.. 해결책에대한 방법을 혹시 아시는지요?

 

 

참 윈도우 apm 은 깨비홈서버사용중이나 윈도apm7, 오토셋 올가6.2 및  그 이하버젼들에서 증상은 같았습니다.