【发布时间】:2018-10-22 23:59:31
【问题描述】:
我没有更改我网站上的任何内容,但最近当用户使用表单上传图片时,Imagick 无法保存该文件。没有错误。这是一个sn-p:
$file = $_FILES['foto']['tmp_name'];
$im = new Imagick($file);
$im->setImageBackgroundColor(new ImagickPixel("white"));
$im->setFormat ("jpg");
$im->cropThumbnailImage(100,100);
$im->writeImages('/path/to/thumb0000.jpg',false);
编辑:感谢TK,我在错误日志中找到了以下消息:
PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/imagick.so' - libMagickWand.so.2: can not open shared object file: No such file or directory in Unknown on line 0.
已解决:我已经安装了 php-pecl-imagick 包,一切都恢复正常了!
【问题讨论】:
-
你看过apache错误日志了吗?
-
谢谢,我已经弄清楚了如何访问error_log。确实有消息: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/imagick.so' - libMagickWand.so.2: can't open shared object file: No such file or directory in Unknown on第 0 行。但是,我在文件管理器中看到此位置的文件。知道会发生什么吗?
-
确保它抱怨的文件确实存在,并且 php 帐户(通常是 Web 服务器帐户)可以访问它。如果两者都是真的,请确保它的依赖项都在那里并且可以访问。
-
我解决了这个问题!我已经安装了 php-pecl-imagick 包,一切都恢复正常了!谢谢大家。
标签: php image-uploading imagick