files.gallery优化

  1.PDF查看

ImagickException: NotAuthorized 'PDF' @ error/constitute.c/IsCoderAuthorized/422错误表明 ImageMagick(以及其 PHP 扩展 Imagick)由于安全策略而阻止处理 PDF 文件。此策略是在 2018 年 ImageMagick 安全更新中引入的,旨在缓解与 Ghostscript 处理的文件类型相关的潜在漏洞。

policy.xml要解决这个问题,需要修改ImageMagick文件:

  • 找到policy.xml文件:文件位置因 ImageMagick 版本和操作系统而异。常见路径包括/etc/ImageMagick-6/policy.xml/etc/ImageMagick-7/policy.xml
    编辑policy.xml文件:使用文本编辑器(例如 )以管理员权限打开文件sudo nano /etc/ImageMagick-6/policy.xml

  • 修改 PDF 访问策略:找到限制 PDF 访问的代码行,通常如下所示

<policy domain="coder" rights="none" pattern="PDF" />

改为rights="none"允许rights="read|write"读取和写入 PDF 文件:

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

或者,如果安装了更新的、打过补丁的 Ghostscript 版本(9.24 或更高版本),则可以根据需要删除禁用 Ghostscript 处理类型的整个部分,不过只需修改 PDF 策略即可解决此错误。

  • 重启 PHP-FPM 或您的 Web 服务器:保存对 policy.xml 的更改后,重启您的 PHP-FPM 服务(例如,sudo service php7.x-fpm restart)或您的 Web 服务器(例如,Apache 或 Nginx),以使更改生效。


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注