干预\来自 Laravel 的图像不管理 webp

问题描述 投票:0回答:2

在我的开发服务器上一切都很好,我通过表单上传的图像被转换为

Image::make($img)->encode('webp');

当我去检查时,它是完美的。

在我的生产服务器上,情况有点不同,例如,如果我上传一个方形图像(完全红色),编码后我最终会得到一个棕色/金色图像,而对于其他图像,我最终会得到一个空白空间。

自从创建图像以来,我认为编码有问题,也许我错过了一些配置..

开发服务器上的 GD 库版本是 2.4.1,生产服务器上的 GD 库版本是 2.1.1

一切都在 Ubuntu 17.10 开发版和 16.04 生产版上运行。

Laravel 版本 5.5

编辑

开发和生产均采用 PHP 7.0 版本

编辑2

出来的就是这样的画面

php laravel gd laravel-5.5 intervention
2个回答
8
投票

好吧,我可能做错了什么(更有经验的人,请纠正我),但我成功了。

我使用的是 Ubuntu 16.04 LTS,libgd-dev 唯一可用的软件包是 2.1.1,所以这就是我升级它的方法:

https://packages.ubuntu.com/artful/amd64/{name-of-the-package}/download

下载这些软件包

zlib1g_1.2.11.dfsg-0ubuntu2_amd64.deb

zlib1g-dev_1.2.11.dfsg-0ubuntu2_amd64.deb

libwebp6_0.6.0-3_amd64.deb

libpng16-16_1.6.34-1_amd64.deb

libgd3_2.2.5-3_amd64.deb

libgd-dev_2.2.5-3_amd64.deb

我按照列出的顺序安装了它们,但是我只是看到 dpkg 抱怨的是哪个依赖项并安装了它。

图像编码代码现在可以完美运行


0
投票

面临同样的问题,但找不到

libgd-dev_2.2.5-3_amd64.deb
我可以在Ubuntu 16.04.7 LTS上替换哪个版本?

© www.soinside.com 2019 - 2024. All rights reserved.