我需要根据图像方向旋转图像并调整其大小。 我从exif_read_data($ source)函数获取图像方向。
我在开发服务器上的。
$source="https://bucket.storage.googleapis.com/file.jpg"
$data=exif_read_data(($source));
它有效。
但是在生产服务器上。它没有。
它给了我这个错误
exif_read_data(file.jpg): Error reading from file: got=x3FFA(=16378) != itemlen-2=x49DE(=18910)
并将$ source更改为绝对路径
$source="gs://bucket/file.jpg"
$data=exif_read_data(($source));
它在开发和生产中都会返回此错误。
exif_read_data(file.jpg): File too small (0)
如何让它在生产服务器中运行?
答案 0 :(得分:0)
可能是因为dev和prod服务器上有不同的php版本。例如,它来自该错误报告:Bug #75785 Many errors from exif_read_data
解决方案可能是使用
$img = new \Imagick(file.jpg);
$allProp = $img->getImageProperties();
$exifProp = $img->getImageProperties("exif:*");
该解决方案的完整故事here