本帖最后由 韭菜 于 2023-6-14 21:22 编辑
准备编译环境(注意,这里是centos的,其他的linux发行版网上找找就有了):
yum install autoconf automake libtool make gcc libwebp libwebp-devel -y
imagick 分为两个部分,第一个是 ImageImagick,然后才是 PHP Imagick,PHP Imagick 支持哪些图片取决于 ImageImagick 库,如果您安装完程序后,发现个别拓展名(例如webp)无法上传,很有可能是因为 imagick 安装时未支持 webp,需要重新编译安装。
注意:ImageImagick 7.0 之后的版本默认开启webp支持,所以不再需要 --with-webp 参数
编译安装 ImageImagick
ImageImagick 支持的图片类型受系统影响,例如如果希望支持 webp,需要 libwebp 库的支持,且需要达到指定版本要求
wget https://github.com/ImageMagick/ImageMagick/archive/refs/heads/main.zip -O ImageMagick.zip
unzip ImageMagick.zip
cd ImageMagick-main/
./configure
make && make install
ldconfig
- 使用 identify -list format 命令查看所有支持的图片格式
- 使用 identify -list format | grep webp 命令查看指定的图片格式是否支持
编译安装 PHP Imagick
注意:请先使用 php -v 命令输出并确认当前使用的 cli php 版本,避免将拓展安装到了其他的 php 版本上。
wget https://github.com/Imagick/imagick/archive/refs/heads/master.zip -O php-imagick.zip
unzip php-imagick.zip && cd imagick-master/
phpize && ./configure
make && make install
安装完成后,执行命令 php --ri imagick,会出现下图中的信息,即为安装完成。
配置 imagick 模块
在php.ini文件加入一行
extension=/你的路径/imagick.so
然后重启 php-fpm,使 imagick 模块生效。
https://docs.lsky.pro/docs/enterprise/v1/others/imagick.html
https://www.24kplus.com/php/1676.html
|