突然出现 ImageMagick "no decode delegate" 错误?
Suddenly getting ImageMagick "no decode delegate" errors?
我 运行 一个允许人们上传 JPEGS 的网站,然后调整其大小并在其顶部应用 .png 水印。
截至今天,很多上传都失败了。
Uncaught ImagickException: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501
奇怪的是,有些仍然可以正常使用,带有水印。
前几天我做了一个 yum update
,它安装了新版本的 ImageMagick 和 -devel 和 -last-libs,我猜这破坏了一些东西。
至于一些上传仍然有效的事实 - 也许我的一些 php-fpm 进程仍然以某种方式使用旧版本?
我使用的是 CentOS 6。
有人可以指点我快速解决这个问题吗,我的网站现在有数百名访问者,如果我不能解决这个问题,我会很受伤!
谢谢。
convert -version
给我这个:
Version: ImageMagick 6.8.9-1 Q16 x86_64 2014-05-28 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates: bzlib freetype jpeg lcms tiff x zlib
(虽然我不知道在事情发生之前它显示了什么)。
这些是我目前安装的软件包:
ImageMagick-6.7.2.7-4.el6_7.x86_64
ImageMagick-devel-6.7.2.7-4.el6_7.x86_64
ImageMagick-last-libs-6.9.4.1-1.el6.remi.x86_64
php70-php-pecl-imagick-3.4.2-1.el6.remi.x86_64
升级后是否重启了服务器(apache 或 fpm)?
对于每个新版本,编码器的路径都会发生变化(因为版本是路径的一部分),因此需要重新启动服务器。
我 运行 一个允许人们上传 JPEGS 的网站,然后调整其大小并在其顶部应用 .png 水印。
截至今天,很多上传都失败了。
Uncaught ImagickException: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501
奇怪的是,有些仍然可以正常使用,带有水印。
前几天我做了一个 yum update
,它安装了新版本的 ImageMagick 和 -devel 和 -last-libs,我猜这破坏了一些东西。
至于一些上传仍然有效的事实 - 也许我的一些 php-fpm 进程仍然以某种方式使用旧版本?
我使用的是 CentOS 6。
有人可以指点我快速解决这个问题吗,我的网站现在有数百名访问者,如果我不能解决这个问题,我会很受伤!
谢谢。
convert -version
给我这个:
Version: ImageMagick 6.8.9-1 Q16 x86_64 2014-05-28 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates: bzlib freetype jpeg lcms tiff x zlib
(虽然我不知道在事情发生之前它显示了什么)。
这些是我目前安装的软件包:
ImageMagick-6.7.2.7-4.el6_7.x86_64
ImageMagick-devel-6.7.2.7-4.el6_7.x86_64
ImageMagick-last-libs-6.9.4.1-1.el6.remi.x86_64
php70-php-pecl-imagick-3.4.2-1.el6.remi.x86_64
升级后是否重启了服务器(apache 或 fpm)?
对于每个新版本,编码器的路径都会发生变化(因为版本是路径的一部分),因此需要重新启动服务器。