OMEKA에서 PDF 업로드시 썸네일 생성되지 않는 경우(Ubuntu 및 Centos별 설정법 포함)

오메카 관리자모드에서 pdf 문서 업로드시 jpg 같은 이미지 파일 처럼 자동으로 썸네일이 생성되지 않는 경우 아래의 방법을 참고하시기 바랍니다.

오메카에서 사용하는 오픈소스 이미지 변환툴은 ImageMagick과 GhostScript입니다.

이 도구의 환경 설정 값을 수정하면 PDF의 썸네일이 자동 생성됩니다.

단, GhostScript는 보안 이슈가 있으므로 사용 중에도 최신 버젼이 나오는 경우엔 지속적으로 업데이트를 하고 패치를 실시하는 것이 안전합니다.


# Ubuntu 운영체제 기준

1. ImageMagick의 policy.xml 수정

$ sudo nano /etc/ImageMagick-6/policy.xml

<policymap> 태그에서 policy의 pattern 값 중 PDF가 없는 경우 아래와 같이 추가하고 저장.

<policy domain="coder" rights="read|write" pattern="PDF" />

만약 이미 있는데 rights가 "none"인 경우 위와 같이 "read|write"로 수정


2. 보안상의 문제로 /tmp 디렉토리를 파티션 마운팅한 이후 다른 디렉토리로 재설정이 필요한 경우

주석 처리된 policy 태그의 name이 "temporary-path"이고 value가 "/tmp"인 태그를 아래와 같이 수정하고 활성화.

 <policy domain="resource" name="temporary-path" value="/var/tmp/"/> 


3. 웹서버 재시작

$ sudo /etc/init.d/apache2 restart


4. 만약 3번까지의 작업을 수행하고도 PDF의 썸네일이 자동 생성되지 않는 경우 아래 방식 추가 수행

$ cd /var/www/omeka/application/config

$ sudo nano config.ini

아래 수정 전 라인을 찾은 후 수정 후 라인과 같이 수정하고 저장.

세미콜론(;)을 아래와 같이 GD는 앞에 넣어서 주석 처리하고 ExternalImageMagick은 주석 해제.

만약 라인 상에 ExternalImageMagick만 있는 경우엔 주석만 해제하면 됨.

 ;fileDerivatives.strategy = "Omeka_File_Derivative_Strategy_GD"

 fileDerivatives.strategy = "Omeka_File_Derivative_Strategy_ExternalImageMagick"




# Centos 운영체제 기준

1. ImageMagick의 policy.xml 수정

$ vi /etc/ImageMagick/policy.xml

<policymap> 태그에서 policy의 pattern 값 중 PDF가 없는 경우 아래와 같이 추가하고 저장.

<policy domain="coder" rights="read|write" pattern="PDF" />

만약 이미 있는데 rights가 "none"인 경우 위와 같이 "read|write"로 수정


2. 보안상의 문제로 /tmp 디렉토리를 파티션 마운팅한 이후 다른 디렉토리로 재설정이 필요한 경우

주석 처리된 policy 태그의 name이 "temporary-path"이고 value가 "/tmp"인 태그를 아래와 같이 수정하고 활성화

 <policy domain="resource" name="temporary-path" value="/var/tmp/"/> 


3. 웹서버 재시작

$ systemctl restart httpd

Sign In or Register to comment.