ImagickException:尝试执行安全策略" PDF"不允许的操作
时间:2020-02-23 14:45:21 来源:igfitidea点击:
从早期版本将ImageMagick更新到6.9.10.23+版本后,会发生以下现象:
- 从PDF,XPS,PS和EPS生成的缩略图不再起作用
- 在Web服务器错误日志中可以找到以下输出:
PHP Fatal error: Uncaught ImagickException: attempt to perform an operation not allowed by the security policy `PDF' @ error/constitute.c/IsCoderAuthorized/408 in /path/to//pdfThumb.php:7\nStack trace:\n#0 /path/to/pdfThumb.php(7): Imagick->__construct('../files/9984/C...')\n#1 {main}\n thrown in /path/to/pdfThumb.php on line 7, referer: https://hostname.theitroad.com
这是由于在较新版本中添加了一项禁用幻影脚本格式的策略。
1.编辑ImageMagick策略文件:
/etc/ImageMagick-6/policy.xml
2.找到以下几行(通常在文件的最底部,第89至95行附近):
<!-- disable ghostscript format types --> <policy domain="coder" rights="none" pattern="PS" <policy domain="coder" rights="none" pattern="PS2" <policy domain="coder" rights="none" pattern="PS3" <policy domain="coder" rights="none" pattern="EPS" <policy domain="coder" rights="none" pattern="PDF" <policy domain="coder" rights="none" pattern="XPS"
3.注释或者删除这些条目,然后重新启动Web服务器服务。