php-mbstring 不会安装在 CentOS 7 和 PHP 7.1.21 上

php-mbstring won't install on CentOS 7 and PHP 7.1.21

需要在 CentOS 7 服务器 运行 PHP 7.1.21 上安装 php-mbstring。我花了几个小时尝试我能找到的所有可能的解决方案。尝试使用 remi 存储库安装时似乎存在冲突。无论我尝试什么,我能得到的最好结果如下:

# yum install php-mbstring
Loaded plugins: fastestmirror, versionlock
Loading mirror speeds from cached hostfile
 * base: mirror.steadfastnet.com
 * epel: mirror.steadfastnet.com
 * extras: mirror.steadfastnet.com
 * remi-php71: mirror.team-cymru.com
 * remi-safe: mirror.team-cymru.com
 * updates: mirror.steadfastnet.com
base                                                         | 3.6 kB  00:00:00
extras                                                       | 3.4 kB  00:00:00
updates                                                      | 3.4 kB  00:00:00
Excluding 8 updates due to versionlock (use "yum versionlock status" to show them)
Resolving Dependencies
--> Running transaction check
---> Package php-mbstring.x86_64 0:7.1.26-1.el7.remi will be installed
--> Processing Dependency: php-common(x86-64) = 7.1.26-1.el7.remi for package: php-mbstring-7.1.26-1.el7.remi.x86_64
--> Finished Dependency Resolution
Error: Package: php-mbstring-7.1.26-1.el7.remi.x86_64 (remi-php71)
           Requires: php-common(x86-64) = 7.1.26-1.el7.remi
           Installed: php-common-7.1.21-1.el7.remi.x86_64 (@remi-php71)
               php-common(x86-64) = 7.1.21-1.el7.remi
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

有什么想法吗?

Excluding 8 updates due to versionlock (use "yum versionlock status" to show them)

以上消息中的解释。

当当前可用版本为 7.1.26 时,您已安装 php 版本 7.1.21。

资源库只有2个最新版本在线。 所以你需要手动下载并安装旧包:php-mbstring-7.1.21-1.el7.remi.x86_64.rpm

或者更好的是,解除对该版本的锁定。 "remi-php71" 存储库将始终提供 7.1.x,您只会收到新的次要版本。

PHP 7.1 现在处于安全模式,7.1.21 受到很多 public 安全问题的影响。