Chevereto使用宝塔PHP7.4编译安装支持WEBP格式

使用宝塔在安装Chevereto3.20.10时发现错误:宝塔php7.4不支持WEBP图片

Missing imagick format(s)
The imagick image library in this provisioning lacks support for the following image format(s):

WEBP
Check our documentation on Image library requirements to workaround this.

Need help? Check our Support.

现在Chevereto最新版的最低环境要求已经提高到PHP7.4,MYSQL5.7。而且已经支持ImageMagick,但宝塔PHP7.4默认安装的ImageMagick却不支持WEBP格式,Chevereto对PHP8的兼容又不太好。以下介绍宝塔PHP7.4编译安装ImageMagick及设置的方法。

  1. 第一种从新编译php已到达目的最简单快捷
wget -O php.sh http://download.bt.cn/tools/php.sh
bash php.sh install 7.4

2.第二种安装最新imagick 包

  • 下载安装包

在https://pecl.php.net/package/imagick 下载安装包,本文所用为当前最新版的3.5.1,从3.4.4后的版本都支持WEBP。

wget https://pecl.php.net/get/imagick-3.5.1.tgz
  • 解压安装包
tar -xzvf imagick-3.5.1.tgz
  • 编译安装
cd imagick-3.5.1
/www/server/php/74/bin/phpize
./configure --with-modules --with-webp --with-php-config=/www/server/php/74/bin/php-config
make && make install
  • 配置PHP及ImageMagick

编辑PHP7.4的配置文件,在末尾加上以下内容(no-debug-non-zts-20190902文件夹名称需以你服务器的具体文件夹名为准,请自行修改,勿照抄):

[imagick]
extension = /www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902/imagick.so

重启php应该就可以安装了

可选编辑/etc/ImageMagick-6/policy.xml文件,根据服务器具体情况修改以下几项的值,memory,map,area将限制ImageMagick所使用的内存缓存,width,height限制ImageMagick所处理的图片大小。

<policy domain="resource" name="memory" value="1024MiB"/>
<policy domain="resource" name="map" value="2048MiB"/>
<policy domain="resource" name="width" value="16KP"/>
<policy domain="resource" name="height" value="16KP"/>
<policy domain="resource" name="area" value="2048MB"/>
<policy domain="resource" name="disk" value="2GiB"/>
点赞
  1. kleos说道:
    用的oneinstack 怎么整呢?

发表回复

电子邮件地址不会被公开。必填项已用 * 标注