IIS7配置PHP和Imagick
由於項目需要,伺服器上要安裝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版本,就沒問題,不知道其他人有沒有碰到過,如果碰到還請留言是如何解決的。