问题描述

部分产品图片无法正常加载,手动resize图片,报错。


bin/magento catalog:images:resize

# warning show:
# ... imagecreatefrompng(): gd-png: libpng warning: Interlace handling should be turned on when using png_read_image ...

查了一下这个问题,因该是 gd 库的bug 导致的报错,受系统环境制约,升级php版本及相关插件风险比较大,好再 Magento 提供了 GD2(默认) 和 ImageMagic 两种库的选择,可以绕过该问题。

安装配置 imageMagic


yum install php-pear php-devel gcc
yum install ImageMagick ImageMagick-devel ImageMagick-perl
pecl install imagick

echo extension=imagick.so >> /etc/php.ini
systemctl restart php-fpm.service

修改默认Adapter


# show default adapter
bin/magento config:show dev/image/default_adapter
GD2
# set imagick as default adapter
bin/magento config:set dev/image/default_adapter IMAGEMAGICK

然后刷新缓存,重新resize,一切正常。