在 Debian 上安装 php-gd ext

tom*_*ikl 4 debian php-gd php-7.2

我无法在我的服务器上安装 php-gd 扩展。

我有 php 7.2:

PHP 7.2.10-1+0~20181001133426.7+jessie~1.gbpb6e829 (cli) (built: Oct  1 2018 13:50:53) ( NTS )
Run Code Online (Sandbox Code Playgroud)

和 debian 8 Linux:

Debian GNU/Linux 8
Run Code Online (Sandbox Code Playgroud)

安装 GD 扩展的命令:

sudo apt-get install php7.2-gd
Run Code Online (Sandbox Code Playgroud)

和结果:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libc-ares2 libnfsidmap2 libpcre16-3 libpcre32-3 libuuid-perl libv8-3.14.5 php-http-request php-mail-mimedecode php-net-dime php-net-url
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  php7.2-gd
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 27.5 kB of archives.
After this operation, 186 kB of additional disk space will be used.
Get:1 https://packages.sury.org/php/ jessie/main php7.2-gd amd64 7.2.10-1+0~20181001133426.7+jessie~1.gbpb6e829 [27.5 kB]
Err https://packages.sury.org/php/ jessie/main php7.2-gd amd64 7.2.10-1+0~20181001133426.7+jessie~1.gbpb6e829
  HttpError404
E: Failed to fetch https://packages.sury.org/php/pool/main/p/php7.2/php7.2-gd_7.2.10-1+0~20181001133426.7+jessie~1.gbpb6e829_amd64.deb  HttpError404

E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Run Code Online (Sandbox Code Playgroud)

有什么想法如何修复它吗?

Joe*_*oey 9

该php-7.2-gd软件包在 Debian 存储库中尚不可用。不过没关系,当然你可以安装它。有一个名为DEB.SURY.ORG的很棒的网站,它将不同的软件打包到 Debian 和 Ubuntu 中(尤其是 PHP 软件包)。

首先,下载包源的密钥:

$ sudo curl -s https://packages.sury.org/php/apt.gpg | sudo apt-key add -
Run Code Online (Sandbox Code Playgroud)

然后在中创建一个.list文件/etc/apt/sources.list.d/:

$ echo "deb https://packages.sury.org/php/ buster main" | sudo tee /etc/apt/sources.list.d/php.list
Run Code Online (Sandbox Code Playgroud)

然后update是upgrade你的发行版:

$ sudo apt update -y && sudo apt dist-upgrade -y
Run Code Online (Sandbox Code Playgroud)

现在您应该能够php7.2-gd通过运行以下命令来安装该软件包:

$ sudo apt install php7.2-gd
Run Code Online (Sandbox Code Playgroud)