imagick max资源与php命令行在php脚本中有所不同

时间:2018-09-04 16:02:33

标签: php nginx imagemagick imagick

我更改了policy.xml,以允许更大的最大图像大小。在命令行中运行脚本时:

$ php image.php
64000

但是当我将其加载到浏览器中时:

16000

该脚本仅包含:

<?php echo Imagick::getResourceLimit(9);

如何使相同的政策适用于所投放的脚本?

编辑:回答多个评论:

因此,策略文件位于/etc/ImageMagick-6/policy.xml的{​​{1}}位置。服务器是nginx,它是一个DigitalOcean Droplet,因此我可以完全控制。

我尝试在实例化Imagick之前和之后都设置资源限制,两者都返回相同的16000限制。

都在命令行中运行文件,并且浏览器仅在服务器上完成。

这是我调整后的政策文件,如果其中任何一个引起限制,我将其全部抬高。图像的最大文件大小为2GB,在300dpi时约为32000px(用于打印):

find /usr /opt / -name policy.xml

1 个答案:

答案 0 :(得分:0)

在我的版本中,CLI和Nginx使用不同的ini文件。

CLI使用FileMode.Create,而Nginx使用FPM /etc/php/{version}/cli/php.ini,我猜想您的配置是相似的。

如果是,请确保要匹配的值相同。

您可以轻松检查;创建一个包含/etc/php/{version}/fpm/php.ini的文件,并通过CLI和Web浏览器检查ini文件的路径。