由于项目需要,服务器上要安装php和imagick库的支持,网上搜了下,教程很多,基本类似,IIS7配置PHP就不说了,现在有PHP Manager,用fastcgi模式配置起来很方便
1、先安装 ImageMagick-6.8.7-7-Q16-x64-dll.exe 。
下载地址: http://www.imagemagick.org/script/binary-releases.php#windows 可以选择其他版本。
2、解压 php_imagick-3.1.2-5.5-ts-vc11-x64.zip,将php_imagick.dll放入php的ext目录下。
可根据Imagick的版本自行下载
下载地址: http://pecl.php.net/package/imagick 点击DLL,可以进入选择相应的php版本。
下载时,请注意non-thread-safe和thread-safe,前者适用于IIS,后者适用于Apache。
3、打开php.ini,添加 extension=php_imagick.dll,重启IIS
然后用phpinfo()查看,死活出不来imagick扩展支持,自己摸索了老半天,查了很多资料,发现光按照大部分网上说的方法, 百分百成功不了! 因为有几个重点没说清楚!
首先是装完ImageMagick,一定要配置环境变量,PATH当中安装的时候可以勾选装上,另外还要添加一个
MAGICK_HOME=C:\ImageMagick\modules\coders,这里可以根据自己的安装目录自行调整
然后就是解压imagick扩展包的时候,有一堆其余的dll文件,要复制到C:\Windows\System32里,如果是64位的复制到C:\Windows\SysWOW64里
然后cmd里运行下php -v,看看有没有报错,如果有报错的,看看是不是漏装了VC库,成功的话,重启下IIS,再运行phpinfo()看看,正常的话,就可以看到imagick加载成功了,如果看到supported formats是no value的话,看下环境变量是否添加了,之前这个问题卡了我好久
另外碰到一个问题,我始终没有解决,我用的php5.6版本时,读取png文件会报错,但是扩展是支持png的,换成php5.3和对应的php_imagick版本,就没问题,不知道其他人有没有碰到过,如果碰到还请留言是如何解决的。