这个错误是由于 ImageMagick 的安全策略限制了对临时文件的访问导致的,可以通过修改ImageMagick 的安全策略文件(policy.xml
)解决。
<!-- 修改前(示例) -->
<policy domain="coder" rights="none" pattern="PS" />
<policy domain="coder" rights="none" pattern="PDF" />
<policy domain="coder" rights="none" pattern="GIF" />
<policy domain="coder" rights="none" pattern="HTTPS" />
<policy domain="coder" rights="none" pattern="HTTP" />
<policy domain="coder" rights="none" pattern="MVG" />
<policy domain="path" rights="none" pattern="/tmp/*" /> <!-- 若存在临时文件限制 -->
<!-- 修改后 -->
<policy domain="coder" rights="read|write" pattern="PS" />
<policy domain="coder" rights="read|write" pattern="PDF" />
<policy domain="coder" rights="read|write" pattern="GIF" />
<policy domain="coder" rights="read|write" pattern="HTTPS" />
<policy domain="coder" rights="read|write" pattern="HTTP" />
<policy domain="coder" rights="read|write" pattern="MVG" />
<policy domain="path" rights="read|write" pattern="/tmp/*" /> <!-- 允许访问临时目录 -->
添加通用允许策略(可选,若仍报错)
在文件末尾添加一条允许所有操作的策略(谨慎使用,可能影响安全性):
<policy domain="coder" rights="read|write" pattern="*" />
<policy domain="path" rights="read|write" pattern="*" />