我最近将我们公司的网络服务器升级到了 Debian 10 Buster。我们的网站使用的是旧版 CMS,无法在 7.0 以上的 PHP 版本上运行。它需要 imagick 扩展。不幸的是,官方的 Debian 软件包php-imagick
仅适用于 PHP 7.3。在我的 Buster 安装上安装适用于 PHP 7.0 的 Image Magick 扩展有什么好的、可持续的方法吗?
答案1
尽管你的 Debian Buster 上已经安装了 PHP 7.0附带PHP 7.3。这很可能来自德布苏里存储库,其中还具有合适的版本php-imagick
:
$ apt-cache show php-imagick
Package: php-imagick
Version: 3.4.4-4+0~20200302.14+debian10~1.gbp2925ae
. . .
Provides: php5.6-imagick, php7.0-imagick, php7.1-imagick ...
但它还会向您显示这个官方的 Debian 10 Buster 版本:
Package: php-imagick
Version: 3.4.3-4.1
. . .
Provides: php7.3-imagick
我在 Debian 10 Buster 上使用 Sury 存储库进行了测试,只需使用 即可默认安装 Sury 的存储库apt-get install php-imagick
。但是,如果没有,您可以选择通过它php7.0-imagick
提供的 来安装此版本:
$ sudo apt-get install php7.0-imagick
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'php-imagick' instead of 'php7.0-imagick'
这php-imagick
将是来自 DEB.SURY.ORG 的。
但下一次,请仔细考虑所有的依赖关系前急于升级操作系统。
答案2
不幸的是,没有一个“好的和可持续的”方法
您的选择似乎是:
- 升级 CMS
- 降级为 Jessie
- 在 Buster 上从源代码编译 PHP/模块和 ImageMagick
从源代码编译所有内容需要花费一些时间和精力,最终可能会成功,但这不是一项小工作。将来可能需要重新编译。简而言之,这不是一项简单的任务。