171 字
1 分钟
GD库导致Magento2图片处理异常的问题处理

问题描述#

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

Terminal window
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#

Terminal window
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#

Terminal window
# 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,一切正常。

GD库导致Magento2图片处理异常的问题处理
https://blog.cuixu.cn/posts/magento2-image-resize-issue/
作者
崔旭
发布于
2023-06-19
许可协议
CC BY-NC-SA 4.0