CentOS 7下关于 PHP GD问题

WBOY
WBOYオリジナル
2016-06-06 20:30:191519ブラウズ

环境:
centos 7
php 5.6.11
jpegsrcv.v9a
使用 imagecreatefromjpeg 的时候报如下错误:
imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error:
is not a valid JPEG file
使用函数 getimagesize 检测图片没问题,路径没问题,文件权限均是755。
再三编译也没办法解决,仔细检查编译也没有出错,不知是哪里问题,望高人指点。

回复内容:

环境:
centos 7
php 5.6.11
jpegsrcv.v9a
使用 imagecreatefromjpeg 的时候报如下错误:
imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error:
is not a valid JPEG file
使用函数 getimagesize 检测图片没问题,路径没问题,文件权限均是755。
再三编译也没办法解决,仔细检查编译也没有出错,不知是哪里问题,望高人指点。

问题已经解决,CentOS 7下下载的jpeg版本库有问题,我下载的是9c,没问题的版本应该是6d的。

试试用finfo_file检查一下文件类型.
php官方有人说:
If you get this error: "Warning: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error" then check the JPEG files. If they are saved in CMYK format (instead of RGB) then GD will fail to load them (tested with GD 2.0.12)

我猜测可以是因为一个不是 jpg 的图像文件被手动改成 .jpg 后缀造成的,仅仅是猜测,因为我自己没遇到过这个问题,题主可以换一张 jpg 图像排除此问题!

另外,图像库推荐使用 imagick 或 gmagick。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。