проблема с хостом- imagick

#module #php #imagick

#модуль #php #imagick

Вопрос:

У меня проблема с этим модулем.

На моем локальном сервере я открываю свой php.ini, и у меня есть модуль imagick в списке. Теперь я сменил сайт на веб-сервер, но в php.ini модуль не отображается.

Я поговорил с компанией, у которой есть веб-сервер, и ответ таков: «модуль установлен, и покажите мне это:»

 root@dime38 [~]# convert
Version: ImageMagick 6.2.8 08/25/10 Q16 file:/usr/share/ImageMagick-6.2.8/doc/index.html 
  

но когда я использую этот код:

  <?php

    $image = new Imagick();
    $image->newImage(100, 100, new ImagickPixel('red'));
    $image->setImageFormat('png');

    header('Content-type: image/png');
    echo $image;

    ?>
  

я просто получаю это:

 Fatal error: Class 'Imagick' not found in /home/empreg0l/public_html/modulo.php on line 3
  

Но тот же код работает на моем локальном хосте.
В чем проблема? (Возможно, расширение прокомментировано в php.ini? или существует какая-либо проблема в коде?)

Спасибо

Ответ №1:

Существует разница между двоичным файлом ImageMagick (который может быть вызван с помощью convert команды) и расширением IMagick PHP. Даже если двоичный файл установлен, это не означает, что расширение PHP установлено.

Вашему провайдеру пришлось бы явно активировать это в PHP своего сервера.

Если они этого не сделают, вам придется воссоздать команды IMagick в качестве параметров командной строки и вызвать их через exec() .

Ответ №2:

Чтобы установить imagick для php:

 apt-get install php5-imagick
  

Ответ №3:

Используйте get_loaded_extensions, чтобы подтвердить, что у вас установлено расширение imagick PHP.

 var_dump(get_loaded_extensions());
  

Ответ №4:

 apt-get install pkg-config libmagickwand-dev -y
cd /tmp
wget https://pecl.php.net/get/imagick-3.4.0.tgz
tar xvzf imagick-3.4.0.tgz
cd imagick-3.4.0
phpize
./configure
make install
rm -rf /tmp/imagick-3.4.0*
echo extension=imagick.so >> /etc/php/7.0/cli/php.ini
echo extension=imagick.so >> /etc/php/7.0/fpm/php.ini
  

Из Установки Imagick 3.4.0 на PHP 7.0