php中imagepng函数,PHP imagepng函数 问题

当PHP无法使用imagepng函数并导致Nginx返回502错误时,问题可能在于libpng版本不匹配。解决方法包括升级libpng到1.6版本或者重新编译安装匹配的libpng1.2.x版本,并重新编译PHP。确保在phpinfo()中查看GD库支持及正确的libpng路径。
摘要由CSDN通过智能技术生成

关于PHP用不了imagepng函数,导致Nginx 502 的问题

一些错误的理解:

1. libpng版本低,这不对,和版本没有关系

首先要自己检查一下,phpinfo()里是否有GD库支持,如果有就看phpinfo()里 --with-png-dir=/usr/local/libpng.1.6.19,然后看看php的依赖库,用这个:

ldd /usr/local/php/bin/php | grep libpng

我的看到是这样:

libpng12.so.0 => /usr/lib/x86_64-linux-gnu/libpng12.so.0 (0x00007fa6dbbe2000)

libpng12.so.0,其实就是说用的libpng的版本是1.2.x的

很明显libpng.1.6.19和libpng.1.2.x是对不上的,问题就在这里,解决的办法是:

1. 把/usr/lib/x86_64-linux-gnu/libpng12.so.0里的libpng12版本升级到libpng16,用apt-get install -y libpng16-dev,再重新编译PHP。

2. 把原来的/usr/local/libpng.1.6.19删了,重新编译安装libpng,要用1.2.x的版本,这里就不赘述libpng的安装了,将路径写到--with-png-dir=里就可以了,再重新编译PHP。

参考资料:

https://www.huangdc.com/533

原文:http://www.cnblogs.com/bootoo/p/7735997.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值