Подтвердить что ты не робот

Запуск ImageMagick на XAMPP 1.8.3 с Windows 7

Я много часов пытался заставить ImageMagick работать на моем локальном хосте (работает XAMPP 1.8.3 в Windows 7). Я проверил и пробовал буквально каждое решение, которое я могу найти на этом веб-сайте, и десятки других. Ничего не работает. Независимо от того, какую комбинацию образов ImageMagick и воображаемых DLL я пытаюсь, я всегда получаю какую-то ошибку "не могу найти dll" при попытке запустить Apache (конкретное сообщение зависит от того, какую комбинацию я пытаюсь, но всегда какое-то пропущенное DLL-сообщение). Может ли кто-нибудь дать мне (умеренно недавнюю) комбинацию XAMPP/ImageMagick/Imagick, которая работает?

4b9b3361

Ответ 1

OK. Наконец я нашел комбинацию, которая работает. После MUCH проб и ошибок, я наконец смог получить нижеприведенную комбинацию для работы на моей машине. Надеюсь, это работает для всех, кто может с этим бороться.

  • ОС: Windows 7 64 бит
  • PHP: 5.5.6
  • XAMPP: 1.8.3
    • Компилятор: MSVC11
    • Архитектура: x86
  • ImageMagick: ImageMagick-6.7.7-5-Q16-windows-dll (доступно здесь)
  • Imagick DLL: версия PHP5.5.x от http://www.peewit.fr/imagick/

Примечание. После того, как я попробовал это, Apache начал без сообщений об ошибках. Мне не пришлось перезагружать компьютер (только что перезапустил Apache). У меня есть ImageMagick, установленный в каталоге, у которого нет пробелов в имени (поскольку некоторые предположили, что это может быть проблемой с некоторыми установками). В моем случае я установил его в c:\xampp\imagemagick.

Удачи вам!

Ответ 2

Imagick - это расширение PECL, а официальный сайт windows.php.net скомпилировал версии расширений PECL.

Пожалуйста, скачайте Imagick с: http://windows.php.net/downloads/pecl/releases/imagick/

И скачайте ImageMagick с: http://windows.php.net/downloads/pecl/deps/

Обратите внимание, что загрузка Imagick с одного сайта и загрузка ImageMagick с другого сайта, скорее всего, не сработают! Это связано с тем, что когда Imagick скомпилирован, он использует несколько параметров, которые зависят от того, какие версии ImageMagick компилируются.

FYI, поддерживающий расширение Imagick рекомендует не запускать его внутри Apache, а вместо этого запускать его в качестве фоновой задачи через нечто вроде SupervisorD или cron. Это касается как соображений безопасности, так и производительности.

Ответ 3

Проведя много часов, пытаясь заставить эту взорванную вещь работать (Windows 7, 64-разрядная), безуспешно, я решил посмотреть на другие системы, чтобы увидеть, как они справились с этой проблемой. Что сделали MediaWiki, просто НЕ ИСПОЛЬЗУЙТЕ расширение ImageMagick/PHP! Они напрямую ссылаются на программу ImageMagick convert.exe и используют результат (см. Раздел /media/Bitmap.php в пакете mediawiki).

Вы не можете обвинять людей в отказе от расширения PHP, поскольку, по-видимому, его нужно скомпилировать с помощью "правого" постоянно изменяющегося компилятора и сопоставить, по крайней мере, с апачами и сборками ImageMagick. Что удивительно в этой ситуации, так это то, что эта проблема существует уже более пяти лет, и она по-прежнему не обрабатывается.

Итак, мое "решение/ответ" на самом деле не одно, в основном это вызов ImageMagick другим способом, чтобы избежать проблемы, как это делали MediaWiki.