Здравствуйте. Суть проблемы следующая. Есть два сервера, на одном все вебп-изобржения обрабатываются нормально. На втором нет, возможно из-за различий версий библиотек. Собственно вот. Эта строчка кода с некоторыми webp-изображениями выдаёт ошибку Код (Text): $im_webp = imagecreatefromwebp($webp_file); Warning: imagecreatefromwebp(): WebP decode: fail to decode input data Warning: imagecreatefromwebp(): 'test.webp' is not a valid WEBP file in... При этом есть вебп файлы которые открываются без проблем. Есть ещё второй сервак, на нём эти же файлы открываются нормально без ошибки. И кстати, метод getimagesize корректно считывает данные об изображении: Спойлер: var_dump Код (Text): array(6) { [0]=> int(512) [1]=> int(276) [2]=> int(18) [3]=> string(24) "width="512" height="276"" ["bits"]=> int(8) ["mime"]=> string(10) "image/webp" } Подскажите, в какую сторону копать? Сразу для полноты картины прикладываю вебп файлы, вот первый, который не работает на проблемном серваке: https://i4.imageban.ru/out/2019/10/11/828ce428048c4d794d690c29e601b9e0.webp второй, работает нормально на обоих серверах https://i1.imageban.ru/out/2019/10/11/701ee9d67dc79b2656ace87ad848a341.webp Конфигурация сервака на котором не открываются: Спойлер: phpinfo PHP Version 7.2.23-1+ubuntu16.04.1+deb.sury.org+1 Apache/2.4.18 (Ubuntu) WebP Support enabled imagick module version 3.4.4 imagick classes Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel Imagick compiled with ImageMagick version ImageMagick 6.8.9-9 Q16 x86_64 2019-06-15 Imagick using ImageMagick library version ImageMagick 6.8.9-9 Q16 x86_64 2017-07-31 Конфигурация сервака на котором всё работает: Спойлер: phpinfo PHP Version 7.2.6 Apache/2.4.6 (CentOS) PHP/7.2.6 WebP Support enabled imagick module version 3.4.3 imagick classes Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator Imagick compiled with ImageMagick version ImageMagick 6.7.8-9 2016-06-16 Q16 Imagick using ImageMagick library version ImageMagick 6.7.8-9 2016-06-16 Q16
https://stackoverflow.com/questions...romwebp-webp-decode-fail-to-decode-input-data RAUSHAN KUMAR you're right, this is the actual solution: $data = file_get_contents ($filename); $image = imagecreatefromwebp ('data://image/webp;base64,' . base64_encode ($data)); this works , whereas just supplying the filename directly fails
а обновить библиотеки и привести в соответствие к той конфигурации - на которой все работает - никак?
@MouseZver этот способ не помог. @ADSoft вот сейчас обновил пхп до версии PHP Version 7.3.10-1+ubuntu16.04.1+deb.sury.org+1 не помогло. А библиотека GD library так и осталась версии Version 2.1.1. не обновилась почему то до 2.2.5. И в репозиторих нет версии свежее, а на centos есть. Может быть из-за нее как раз проблема?