达到了内存限制,使用Imagick创建了大图像的缩略图

时间:2014-04-16 14:01:44

标签: php imagemagick gd thumbnails imagick

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

$thumb = new Imagick ($sourceFilePath);
$thumb->thumbnailImage ($width, $thumb->getImageHeight() * ($width / $thumb->getImageWidth()));
$thumb->writeImage ($targetFilePath);
$thumb->destroy ();

但是我仍然得到没有消息的500 Server Error,就像在内存不足时曾经发生过GD一样,任何想法?感谢

BTW memory_limit设置为512 MB,here您可以获取原始图像文件。

1 个答案:

答案 0 :(得分:0)

如果要限制ImageMagick使用的内存,则应设置其中一个环境变量(例如MAGICK_MEMORY_LIMIT)或修改policy.xml文件。有关详细信息,请访问以下页面:http://www.imagemagick.org/script/resources.php