我正在使用imagick进行GIF文件上传并调整大小。我用来上传文件大小范围从5mb-15mb 由于巨大的临时文件,我的网站崩溃了,图像也没有正确转换。 我该如何解决这个问题?
$imagick = new Imagick($_FILES['file']['tmp_name']);
foreach ($imageFolders as $imageFolder => $size) {
if ($imagick->getImageWidth() > $size['minWidth']) {
$width = $size['maxWidth'];
$height = $size['maxWidth'];
} else {
$width = $imagick->getImageWidth();
$height = $imagick->getImageHeight(
}
$imagick = $imagick->coalesceImages();
foreach($imagick as $frame){
$frame->thumbnailImage($width , $height );
$frame->setImagePage($width , $height , 0, 0);
}
$imagick = $imagick->deconstructImages();
$imagick->writeImages($imagePath, true);
}
$imagick->clear();
答案 0 :(得分:0)
我面临同样的问题,它与imageMagic有关。我收到了这个链接https://github.com/ImageMagick/ImageMagick/issues/395。为了解决这个问题,我创建了一个每分钟运行一次的cronjob并删除了tmp文件。 这是shell脚本
find /tmp -maxdepth 1 -type f -name "magick-*" -delete
如果有人有更好的选择,请建议。