Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Imagick创建大型图像的缩略图时已达到内存限制_Php_Imagemagick_Gd_Thumbnails_Imagick - Fatal编程技术网

Php 使用Imagick创建大型图像的缩略图时已达到内存限制

Php 使用Imagick创建大型图像的缩略图时已达到内存限制,php,imagemagick,gd,thumbnails,imagick,Php,Imagemagick,Gd,Thumbnails,Imagick,我正在尝试为一个大图像(8200x11800像素)创建一个缩略图,所以GD不是一个选项。我被告知Imagick将通过使用磁盘空间而不是ram内存来克服内存限制,因此我安装了它,并按照如下方式重写了mi脚本: $thumb = new Imagick ($sourceFilePath); $thumb->thumbnailImage ($width, $thumb->getImageHeight() * ($width / $thumb->getImageWidth())); $

我正在尝试为一个大图像(8200x11800像素)创建一个缩略图,所以GD不是一个选项。我被告知Imagick将通过使用磁盘空间而不是ram内存来克服内存限制,因此我安装了它,并按照如下方式重写了mi脚本:

$thumb = new Imagick ($sourceFilePath);
$thumb->thumbnailImage ($width, $thumb->getImageHeight() * ($width / $thumb->getImageWidth()));
$thumb->writeImage ($targetFilePath);
$thumb->destroy ();
但我仍然收到
500服务器错误
,没有任何消息,就像GD在内存不足时发生的一样,知道吗?谢谢


顺便说一句,内存限制设置为512 MB,您可以获取原始图像文件。

如果要限制ImageMagick使用的内存,您应该设置一个环境变量(例如MAGICK\u memory\u limit)或修改policy.xml文件。有关更多信息,请访问以下页面:

您是否设置了MAGICK\u MEMORY\u LIMIT或modify policy.xml()请将其作为答案发布,以便我可以接受并敬拜您:)