■環境
・CentOS7
・PHP 7.0.3
・ImageMagick 6.9.4-1 Q16 x86_64
先日の脆弱性の件もあり、ImageMagickをupdateしました。
yumでインストールしていたので、remiリポジトリでupdateしました。
bash
1 yum --enablerepo=remi update ImageMagick-last
update後、PHPでImageMagickで画像加工するスクリプトを動かしたところ、ImageMagickのエラーが発生するようになってしまいました。
update前のバージョンは6.9.10でした。
php
1//PNGを読み込ませた時 2Fatal error: Uncaught ImagickException: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501 3 4//JPEGを読み込ませた時 5Fatal error: Uncaught ImagickException: no decode delegate for this image format `JPEG' @ error/constitute.c/ReadImage/501
エラーを検索しましたが、libpngやlibjpegが無いから、というものはたくさんヒットするものの、いずれもインストールされており、アップデート前は問題なく動いていたので、6.9.4になったことで発生しているのだと思います。
###環境の詳細
ImageMagickの本体のバージョンは以下です。
名前 : ImageMagick-last
アーキテクチャー : x86_64
バージョン : 6.9.4.1
リリース : 1.el7.remi
convert -versionコマンドで確認するとDelegates にpngもjpegもあります。
bash
1Version: ImageMagick 6.9.4-1 Q16 x86_64 2016-05-11 http://www.imagemagick.org 2Copyright: Copyright (C) 1999-2016 ImageMagick Studio LLC 3License: http://www.imagemagick.org/script/license.php 4Features: Cipher DPC Modules OpenMP 5Delegates (built-in): bzlib cairo djvu fftw fontconfig freetype gslib gvc jbig jng jpeg lcms ltdl lzma openexr pangocairo png ps rsvg tiff webp wmf x xml zlib
それぞれのライブラリをyum infoするとこうなります。
●libpng
名前 : libpng
アーキテクチャー : x86_64
エポック : 2
バージョン : 1.5.13
リリース : 7.el7_2
●libjpeg-turbo
名前 : libjpeg-turbo
アーキテクチャー : x86_64
バージョン : 1.2.90
リリース : 5.el7
●php-pcel-imagick
名前 : php-pecl-imagick
アーキテクチャー : x86_64
バージョン : 3.4.2
リリース : 1.el7.remi.7.0
いずれも、remiリポジトリでは最新のものが入っています。
ImageMagickをremove,再度installなどしてみても、改善されませんでした。
どのように解決すればよいか、ご教授いただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー