![](/img/trans.png)
[英]how to use install imagemagick to use php on windows 8.1
[英]How to install ImageMagick to use with PHP on Windows 7 (3)
還有其他關於如何在 Windows 7 上安裝 Imagick 的線程,但到目前為止對我沒有幫助。 (也許最近的版本出現了問題)
我已按照以下步驟進行安裝:
http://www.imagemagick.org/download/binaries/ImageMagick-6.8.8-1-Q16-x86-dll.exe
http://www.peewit.fr/imagick/php55/vc11/x86/ts/php_imagick.dll
擴展名=php_imagick.dll
保存 ini 文件並重新啟動 Apache(如有必要,請重新啟動 Windows)
啟動Apache並運行測試
當我啟動 Apache 時,我得到一個彈出框,顯示:
程序無法啟動,因為您的計算機缺少 php5.dll。 嘗試重新安裝程序以解決此問題。
然后緊接着是另一個:
PHP 啟動:無法加載動態庫 'C:\\xampp\\php\\ext\\php_imagick.dll' - 找不到指定的模塊。
根據 funtioneer 的說法,我懷疑存在某種編譯錯誤。
現在我有 PHP 版本 5.5.6 (xampp 1.8.3) 和編譯器 MSVC11,它與 php_imagick.dll 文件相同。
從源代碼下載 ImageMagick 並自行編譯是正確的方法嗎? (以前從未在 Windows 中編譯過)
我沒有使用最新版本,而是嘗試從這里下載 ImageMagick-6.7.7-5-Q16-windows-dll。 那個實際上與來自http://www.peewit.fr/imagick/的 php_imagick.dll (Imagick for PHP 5.5.x) 一起工作。
這不是最新版本,但它有效。 (即使沒有重新啟動計算機)
在嘗試了互聯網上發布的幾乎所有可能的解決方案后,最終對我有用:
環境:
OS: Windows Server 2008 R2 (64bit)
IIS: 7.5
PHP: 5.5.11 (x86)
PHP.ini: VC11, x86
下載並安裝 ImageMagick
ImageMagick-6.8.9-1-Q16-x86-dll.exe
從 Anatol 建議的來源下載相應的 .zip(感謝 Anatol!)
ImageMagick-6.8.9-1-vc11-x86:
在我的情況下,解壓到一個臨時文件夾並復制 Imagemagick 安裝(c:\\imagemagick)
中“bin”文件夾的內容覆蓋文件。
下載.dll
並將其放在 php extensions 文件夾中(我使用了這個)
Imagick for PHP 5.5.x 非線程安全來自: http ://www.peewit.fr/imagick/
使用以下命令將擴展添加到 php.ini:
extension=php_imagick.dll
保存 php.ini 並重啟 IIS
最后在 phpinfo() 中顯示了 Image Magick 信息; 稱呼。
想到要解決從 3 個不同位置下載文件所需的這個問題,真是令人難以置信。
希望能幫助到你。
這是我為使其工作所做的工作注意:真正讓我感到困惑但並沒有真正解釋的步驟是 php_imagick.dll 版本應該與您安裝的 imagick 相匹配
好的,我采取的步驟是從http://windows.php.net/downloads/pecl/releases/imagick/3.1.2/下載 php imagick dll(我使用了 php_imagick-3.1.2-5.5-ts-vc11-x86。壓縮)
zip 文件將包含許多 dll,請記住這一點,我們將來可能需要它。 將 php_imagick.dll 解壓到您的擴展文件夾
把它放在擴展文件夾中
在 php.ini 添加擴展名 = php_imagick.dll
現在的問題是我們需要找出 php_imagick.dll 是為 Open 命令提示符編譯的 imagick 版本,然后輸入 php -e -v 我這樣做的方法是使用您之前下載的 zip,將其他 DLL 解壓縮到您的php 文件夾中可能會彈出一條錯誤消息,說明有關缺少 dll 的信息。 因此,將之前 zip 文件夾中的 DLL 提取到您的 PHP 文件夾中。 再次嘗試運行 php -e -v ,它應該可以正常工作,沒有錯誤消息。 如果是這種情況,則重新啟動 apache。 現在查看 phpinfo() 並轉到 imagick 部分。 它會說 ImageMagick 版本:我說 ImageMagick 6.8.6-8 這是他們網站上的舊版本。 問題是 ImageMagick 支持格式的數量:可能會說為零。
去這里下載匹配的版本並安裝(安裝時確保選中添加到路徑變量的復選框)
安裝完成后停止 apache。 從之前放入的 php 文件夾中刪除 DLLS,然后再次啟動 apache。 檢查重新啟動apache,它應該一切正常。
應該使用的 ImageMagic 發行版來自http://windows.php.net/downloads/pecl/deps/ 。 ImageMagic 二進制文件需要使用與 PHP 擴展相同的 CRT 構建。
請參閱安裝 imagick-php-7以使用 php 7.0 + 在 Windows 上安裝 imagick php 擴展。 到目前為止,這只是我找到的真正解決方案。 它非常詳細。
我使用 php 7 和 IIS(Apache 非常相似)使用 ImageMagick:Imagick版本。 3.4.3
PHP 7 nts x86、Windows Server 2012 x64、IIS 8.5
1) 安裝 VC++ 2015 https://www.microsoft.com/en-US/download/details.aspx?id=48145
2)只得到php_imagick.dll
從https://pecl.php.net/package/imagick
3) 放入 php/ext/ 文件夾,將extension=php_imagick.dll
添加到php.ini
注意力! 最低版本支持 PHP >= 5.4.0 和 ImageMagick >= 6.5.3-10。
目前不支持 ImageMagick 7。
查看phpinfo:
您必須安裝 ImageMagick 6.9.3-7 Q16 x86 4) 從http://ftp.icm.edu.pl/packages/ImageMagick/binaries/安裝ImageMagick 6.9.3-7 Q16 x86 dll
不要取消選中“將變量添加到路徑”。
5)重啟服務器
就這樣
它按以下步驟工作。
php 5.5 32bit ts
+ apache 2.4
+ windows 10 64bit
+ Imagick 6.9.3-5
+ php_imagick.dll ts
檢查您的系統位的位。
從http://windows.php.net/downloads/pecl/releases/imagick/選擇一個php_imagick.dll
版本
從.zip
文件中找到php_imagick.dll
如果你不知道如何選擇。
在命令行窗口輸入php -v
獲取 php 版本
運行以下代碼顯示您安裝了哪種類型的 php, thread safe
non thread safe
單擊此處將為您提供幫助。
在 Windows 上: php -i|find "Thread"
在 Linux 上: php -i|grep Thread
或者您可以運行函數phpinfo()
並在網頁上搜索"Thread"
。
您將看到Thread Safety enabled
Thread Safety disabled
或Thread Safety disabled
@embe 已經寫出了其他步驟。
現在對於文檔沒有提到的內容:在您的環境中設置 MAGICK_HOME 值。 ImageMagick 需要這個變量,所以它知道在哪里可以找到所有相關的編碼器。
打開控制面板,然后搜索“PATH”。 在結果中,選擇“編輯系統環境變量”。 選擇“環境變量...”選項,然后添加一個新的“系統變量”(下方列表)。 如果您選擇了不同的安裝路徑,請確保將 C:\\img 替換為您自己的路徑。
變量:MAGICK_HOME
值:C:\\img\\modules\\coders
解決了!
在遇到同樣的問題和一些谷歌搜索之后,我找到了 Windows 的解決方案,它似乎也適用於每個版本。
在我的情況下,PHP 安裝在 c:\\php,我的擴展目錄在 c:\\php\\ext。
重啟 apache 就完成了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.