首页 > 解决方案 > CentOS 7 - 无法安装 PHP 7.3

问题描述

我想启用php73作为默认版本并安装与之相关的所有软件包。所以我做了:

$ sudo yum-config-manager --enable remi-php73

接着:

$ sudo yum install php php-pecl-mcrypt php-cli php-gd php-curl php-mysqlnd php-ldap php-zip php-fileinfo php-common php-xml php-fpm php-mbstring php-bcmath php-soap php-oci8

紧接着,我可以看到它想要安装PHP 8.0remi-php80,它破坏了我的项目依赖项):

Dependencies Resolved

======================================================================================================
 Package              Arch             Version                             Repository            Size
======================================================================================================
Installing:
 php                  x86_64           8.0.0~beta4-2.el7.remi              remi-php80           3.4 M
Installing for dependencies:
 php-cli              x86_64           8.0.0~beta4-2.el7.remi              remi-php80           5.3 M
 php-common           x86_64           8.0.0~beta4-2.el7.remi              remi-php80           1.2 M
 php-sodium           x86_64           8.0.0~beta4-2.el7.remi              remi-php80            74 k

如何在 Centos 7 上启用和强制安装PHP 7.3 ?

我想避免手动操作,例如: $ sudo yum install php73 php73-php-cli php73-php-fpm

标签: phpcentoscentos7yumphp-7.3

解决方案


如果你想要PHP 7.3,你必须只启用“ remi-php73 ”存储库(和“ remi -safe ”,默认启用)。

根据您的问题中的 yum 输出,错误地启用了“ remi-php80 ”。您可以使用启用哪些存储库

# yum repolist

有关正确的存储库配置,请参阅向导说明

# yum-config-manager --disable 'remi-php*'
# yum-config-manager --enable remi-php73
# yum-config-manager --enable remi-safe

关于mcrypt扩展,我建议你摆脱它,请参阅关于 libmcrypt 和 php-mcrypt

而且我认为您不需要php(用于 Apache HTTP Server 的 mod_php)和php-fpm

对于php-oci8,我建议您阅读Installation of Oracle extensions for PHP


推荐阅读