AtoM 디지털 객체 파일명 한글표시 설정
AtoM 시스템에 파일 업로드하면 한글로 된 파일명이 언더바 '_' 처리됩니다.
문제의 원인은 이상한 문자가 들어올 경우 언더바 처리하여 에러를 차단하기 위한 기능(sanitization on upload) 때문입니다.
문제는 한국어 등 받침이 있는 문자로 된 파일명이 모두 제대로 표현되지 않는다는 것입니다.
이 문제는 2014년 4월 버그로 등록(Bug#6545)되었으나 아직 해결되지 않았습니다.
2015년 국립문화재연구소의 AtoM 시스템 개발 프로젝트에서 이 문제를 부분적으로 해결했습니다.
sanitization 기능을 건너뛰도록 설정한 것이라 완전한 해결은 아닌 것 같습니다.
아래 제시된 방법으로 우선 해결한 뒤 다른 부분에 문제가 없는지 테스트가 필요합니다.
충분한 테스트 이후 결과를 AtoM 깃허브에 제출하여 커뮤니티 개발자들로부터 피드백 받도록 하겠습니다.
4. 디지털객체 파일명 한글표시
4.1 개선설명
디지털객체 한글 파일이 들어가면 _ 로 표시됨
4.2 테스트 환경 :
OS: Ubuntu 14.04.3
WAS : Apache/2.4.18 (Ubuntu)
DB : mysql Ver 14.14 Distrib 5.5.47, for debian-linux-gnu (x86_64) using readline 6.3
개발언어 : php 5.5.31-2+deb.sury.org~trusty+1 (cli)
아카이브 솔루션 : atom 2.2.0
4.3 개발전략 및 결과 : 소스코드를 파악을 하여 수정을 하여 테스트 까지 해서 한글 파일이 잘 나온것으로 확인
4.4 소스코드 설명(해결방법)
4.4.1 sudo nano /lib/model/QubitDigitalObject.php에 ‘return preg_replace('/[^a-z0-9_\.-]/i', '_', $filename);’부분을 아래와 같이 수정하여 저장한다.
return $filename;
4.4.2 sudo service php5-fpm restart
4.4.3 sudo service apache2 restart
4.5 작업 소요시간 : 2일
Tagged: