Imagick是一款非常好用的PHP图片处理扩展工具,提供了丰富的图片处理API。
PHP扩展安装方法大体上有两种,一种是自己下载源码编译,一种是使用软件包管理工具。前一种胜在灵活,可控性强。后一种就是简单省事,步骤少。
开源世界的包依赖,一直都是有机会让人崩溃的问题,优秀的包管理工具对生产力都有很大的提升。
一、记录一下使用包管理工具的安装步骤
- 先安装ImageMagick
$ yum install ImageMagick ImageMagick-devel
安装开发包,是因为后面会用到 - 然后安装imagick扩展
$ pecl install imagick
- 安装完之后,在php.ini配置中,增加
extension=imagick.so
如果不知道php.ini在哪,用这个命令$ php --ini
顺利的话,安装过程这三个步骤就OK了,可以在phpinfo里查看扩展信息了$ php -i | grep imagick
imagick module => enabled
imagick module version => 3.7.0
如果用的是php-fpm,生效还需要重启一下:$ systemctl restart php-fpm
二、使用pecl安装扩展的过程中,遇到了几个问题,解决方法也一并记录一下
- 报错
Connection to `ssl://pecl.php.net:443' failed:
原因是根证书需要更新,步骤如下:
a. 找到证书文件路径$ php -r "print_r(openssl_get_cert_locations());”
打印内容中的[default_cert_file]
就是了
b. 下载证书$ wget http://curl.haxx.se/ca/cacert.pem
c. 覆盖旧的证书文件$ mv cacert.pem /usr/local/ssl/cert.pem (你自己的路径)
- 报错
checking Testing /usr/local/bin/MagickWand-config… Doesn't exist
checking Testing /some path/MagickWand-config… Doesn't exist
找不到MagickWand-config,安装ImageMagick-devel即可解决。 - 提示
Please provide the prefix of Imagemagick installation [autodetect] :
这里意思是默认autodetect,直接回车就可以了。