我的 WordPress 网站站点运行状况页面显示可能的改进 — PHP 模块 intl 丢失。
我的服务器有多个活跃的 PHP 版本(8.1 和 8.2)。
我使用以下 ssh 命令来安装缺少的 intl 模块:
apt-get install -y php-intl
但是我收到此错误消息:
以下软件包具有未满足的依赖关系:php8.1-intl:
取决于: php8.1-common (= 8.1.2-1ubuntu2.10) 但是 需要安装 8.1.14-1+ubuntu18.04.1+deb.sury.org+1 E: 无法纠正问题,您持有损坏的软件包。
我的服务器上活动的 PHP 模块(例如 imagick)是为 php8.1 安装的。但我的活跃 PHP 版本是 8.2.
问题出在“php8.1-intl”包的依赖项上。具体来说,它需要“php8.1-common”包的版本8.1.2-1ubuntu2.10,但目前可用的版本是8.1.14-1+ubuntu18.04.1+deb.sury.org+1,即正在引发冲突。
尝试:
sudo apt update
sudo apt-get check
sudo apt-get install -f
sudo dpkg --configure -a
5.
sudo apt-get install php8.1-common=8.1.2-1ubuntu2.10
6.
sudo apt-get install php8.1-intl
您可能需要删除冲突的软件包并重新安装所需的软件包。但删除包时要小心,因为它可能会导致其他依赖项损坏。
我的问题是服务器从 Ubuntu 20 升级到 22。我正在使用
PHP8.2
并且已经有一个正在运行的网络服务器。
当我使用
php-intl
安装 sudo apt install php-intl
时,
它为我提供了我不需要的 8.1
版本。
但是当我直接安装时
php8.2-intl
它在该存储库中不存在。
所以我添加了 PPA:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
之后,我运行命令来安装
php-intl
sudo apt install php8.2-intl
它运行完美,安装的应用程序也是如此。