Как установить ImageMagick для использования с PHP в Windows 7 (3)
Есть другие темы о том, как установить Imagick на Windows 7, но пока не помогаю мне.: (
(Возможно, проблемы возникли с более поздними версиями)
Я выполнил следующие шаги для установки:
Когда я запускаю Apache, я получаю всплывающее окно, которое отображает:
Программа не может запускаться, так как php5.dll отсутствует на вашем компьютере. Попробуйте переустановить программу, чтобы устранить эту проблему.
Затем сразу после этого появляется другое:
Запуск PHP: невозможно загрузить динамическую библиотеку 'C:\xampp\php\ext\php_imagick.dll' - указанный модуль не найден.
Согласно funtioneer, я подозреваю, что какая-то ошибка компиляции.
Теперь у меня есть PHP Version 5.5.6 (xampp 1.8.3) с компилятором MSVC11, который совпадает с файлом php_imagick.dll.
Скачайте ImageMagick из исходного кода и скомпилируйте его по-своему правильно? (никогда ранее не компилировались в Windows)
Ответы
Ответ 1
Вместо использования последней версии я попытался загрузить ImageMagick-6.7.7-5-Q16-windows-dll из здесь. Это фактически работало с php_imagick.dll(Imagick for PHP 5.5.x) из http://www.peewit.fr/imagick/.
Это не последняя версия, но она сработала. (даже без перезагрузки компьютера)
Ответ 2
Вот что, наконец, помогло мне после того, как вы попытались найти все возможные решения в Интернете:
Окружающая среда:
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
Download Соответствующий .zip из предложенных Анатолом источников (уступки Анатолу!)
ImageMagick-6.8.9-1-vc11-x86:
Извлеките во временную папку и скопируйте содержимое папки "bin" внутри установки Imagemagick (c:\imagemagick)
в моем случае перезаписи файлов.
Загрузите .dll
и поместите его в папку расширения php
(Я использовал этот)
Imagick для PHP 5.5.x Non Thread Safe от:
http://www.peewit.fr/imagick/
Добавьте расширение в php.ini с помощью:
extension=php_imagick.dll
Сохраните php.ini и перезапустите IIS
Наконец, Image Magick информация отображалась в phpinfo(); звоните.
Невероятно думать, чтобы решить эту проблему, необходимую для загрузки файлов из трех разных мест.
Надеюсь, что это поможет.
Ответ 3
Вот что я сделал, чтобы заставить его работать
Примечание. Шаг, который действительно сработал, что на самом деле не объясняет, что версия php_imagick.dll должна соответствовать вашей установке imagick
Итак, шаги, которые я предпринял, были
скачать php imagick dll из
http://windows.php.net/downloads/pecl/releases/imagick/3.1.2/ (я использовал php_imagick-3.1.2-5.5-ts-vc11-x86.zip)
В zip файле будет много DLL, но это необходимо в будущем.
Извлеките php_imagick.dll в папку расширения
Поместите это в папку расширения
IN php.ini добавить
extension = php_imagick.dll
Теперь проблема в том, что нам нужно выяснить, какая версия imagick была скомпилирована php_imagick.dll для
Откройте командную строку и введите php -e -v
То, как я это делал, было с ранее загруженным zip файлом, извлечением других DLL файлов в папку php, вероятно, появится всплывающее сообщение об ошибке с отсутствующими DLL файлами. Поэтому извлеките DLL из папки zip из папки в папку PHP.
Попробуйте запустить php -e -v снова, и он должен работать нормально, без сообщения об ошибке.
Если это так, то
Перезапустите apache. Теперь посмотрите на phpinfo() и перейдите в раздел imagick. Он скажет версию ImageMagick: Mine сказал ImageMagick 6.8.6-8, которая является более старой версией, чем у них на своем сайте. Проблема заключается в том, что число поддерживаемых форматов ImageMagick: вероятно, будет иметь нулевое значение.
Перейдите здесь и загрузите соответствующую версию и установите (при установке убедитесь, что установлен флажок добавления в переменную пути)
После завершения установки Stop apache. Удалите DLLS из папки php, которую вы положили ранее, и снова запустите apache. Проверьте
перезапустите apache и все должно работать.
Ответ 4
Распределение ImageMagic, которое следует использовать, отсюда http://windows.php.net/downloads/pecl/deps/. Бинарные файлы ImageMagic должны быть созданы с тем же CRT, что и расширение PHP.
Ответ 5
Пожалуйста, смотрите installing-imagick-php-7 для установки расширения php Facebook для Windows, используя php 7.0+. Это единственное реальное решение, которое я нашел до сих пор. Это подробно описано.
Ответ 6
ОБНОВЛЕНО: 21.08.2017
Я работал с ImageMagick с php 7 и IIS (Apache очень похож):
Imagick Версия. 3.4.3
PHP 7 nts x86, Windows Server 2012 x64, IIS 8.5
1) Установите VС++ 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) установите ImageMagick 6.9.3-7 Q16 x86 dll
из http://ftp.icm.edu.pl/packages/ImageMagick/binaries/
Не снимите флажок "добавить переменную в путь".
5) перезапустить сервер
thats all
Ответ 7
Он работает следующим образом.
php 5.5 32bit ts
+ apache 2.4
+ windows 10 64bit
+ Imagick 6.9.3-5
+ php_imagick.dll ts
Проверьте, какой бит бит системы.
Выберите версию php_imagick.dll
из
http://windows.php.net/downloads/pecl/releases/imagick/
Найти php_imagick.dll
из .zip
файла
Если вы не знаете, как выбрать.
Тип php -v
получить версию php в окне командной строки
Выполнить следующий код показывает, какой тип php вы установили, thread safe
или non thread safe
. и нажмите здесь поможет вам.
В окнах: php -i|find "Thread"
В Linux: php -i|grep Thread
или вы можете запустить функцию phpinfo()
и выполнить поиск "Thread"
на веб-странице.
Вы увидите Thread Safety enabled
или Thread Safety disabled
Другие шаги уже были выписаны @embe.
Ответ 8
Теперь о чем-то в документации не упоминается: установка значения MAGICK_HOME в вашей среде. ImageMagick требует эту переменную, чтобы он знал, где найти все соответствующие кодеры.
Откройте панель управления и найдите "PATH". В результатах выберите "Редактировать переменные системной среды". Выберите параметр "Переменные среды..." и добавьте новую "Системную переменную" (нижний список). Если вы выбрали другой путь установки, обязательно замените C:\img на свой собственный путь.
Переменная: MAGICK_HOME
Значение: C:\img\modules\coders
подробнее