php的imagick模塊擴展


imagick模塊介紹

      ImageMagick是一個用於查看、編輯位圖文件以及進行圖像格式轉換的開放源代碼軟件套裝。它可以讀取、編輯超過100種圖象格式,可用來替換GD庫。

安裝

在加載模塊前要裝好php 與nginx,參考https://www.cnblogs.com/huandada/p/10114722.html

編譯安裝ImageMagick

wget https://www.imagemagick.org/download/ImageMagick.tar.gz
tar -xvf ImageMagick.tar.gz
cd ImageMagick-7.0.8-20/
./configure -prefix=/usr/local/imagemagick
sudo make
sudo make install

php端imagick模塊擴展

wget http://pecl.php.net/get/imagick-3.4.3.tgz 
tar -xvf imagick-3.1.2.tgz
cd imagick-3.1.2
/usr/local/php/bin/phpize
./configure  --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
sudo make

make install后可以得到該模塊擴展路徑,之后這個路徑會添加到php.ini

sudo make install

sudo vim /usr/local/php/etc/php.ini  添加以下行
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/imagick.so

重啟php-fpm服務

sudo killall php-fpm
cd /usr/local/php/sbin/
./php-fpm 

phpinfo()頁面查看模塊加載情況

cat /usr/local/nginx/html/info.php 
<?php
    phpinfo()
?>

訪問頁面 http://ip:80/info.php

配置完成

錯點梳理

在最初 imagick-3.1.2.tgz 編譯時,:./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
報錯: configure: error: Cannot locate header file magick-wand.h
排錯思路:版本問題,ImageMagick-7.0.8-20版本的目錄結構發生了變化,而imagick-3.1.2.tgz的包中還是低版本的結構
查看imagick-3.1.2.tgz解壓包54行

vim imagick-3.1.2/config.m4  
AC_MSG_RESULT(found in $WAND_DIR/include/ImageMagick-6/wand/magick-wand.h)

查看安裝的ImageMagick目錄為
/usr/local/imagemagick/include/ImageMagick-7/......

解決方法使用高版本的magick包:imagick-3.4.3.tgz

注:本文的是在 nginx的Memcached模塊加載 的基礎上進行操作,如有疑問還可參考此篇,模塊不同,安裝方法是一樣的
https://www.cnblogs.com/huandada/p/10184241.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM