Amazon ec2 linux Imagemagick 问题

Amazon ec2 linux Imagemagick issues

命令:convert | head -n 4 显示这个

Version: ImageMagick 6.7.8-9 2014-05-12 Q16 http://www.imagemagick.org Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC Features: OpenMP

然后当我 运行 这个:

<?php 
$imagick = new Imagick(); 
$imagick->readImage('test.pdf'); 
$imagick->writeImages('image.jpg', false); 
echo 'Aw';
?> 

显示此错误:

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/5.6/modules/imagick.so' - /usr/lib64/php/5.6/modules/imagick.so: cannot open shared object file: No such file or directory in Unknown on line 0 PHP Fatal error: Class 'Imagick' not found in /var/www/html/test/imagick/index.php on line 2

我将 extension=imagick.so 添加到我的

etc/php.ini

etc/php-5.6.ini

etc/php-5.5.ini

我测试的时候总是先执行这个sudo service httpd restart

我的参考:https://gist.github.com/ARolek/9199329

看起来您安装了 ImageMagick,但没有安装 PECL Imagick 模块。

最简单的方法是使用 pecl 实用程序。

pecl install imagick

如果 pecl 实用程序不可用,您可以手动执行此操作。

curl -o imagick-latest.tgz https://pecl.php.net/get/imagick
tar zxvf imagick-latest.tgz
cd imagick-VERSION_HERE
phpize
./configure
make
make test # optional but a good idea
sudo make install

注意make install的输出。如果 php.ini 没有自动获取,您可以将 extension 设置更新为绝对路径。

extension=/usr/local/lib/php/extensions/no-debug-non-zts-VERSION/imagick.so

试试这个

yes | yum install kernel-devel gcc gcc-c++
yes | yum install php-devel
yum install php-pear # This line installs pecl as well as pear
yum install ImageMagick-devel
pecl install imagick
Add extension-imagick.so to /etc/php.ini
service httpd restart