删除 RHEL 6 上的旧版本 PHP

删除 RHEL 6 上的旧版本 PHP

我在运行 RHEL 6 的服务器上安装了新版本 (7.1) 的 PHP。我可以验证安装,并且通过 Web 服务器,我看到要使用的版本是 7.1。然而,在命令行上,我得到了

php -v
PHP 5.6.8 (cli) (built: Apr 17 2015 15:13:59) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

rpm -qa 仅显示版本 7.1:

rpm -qa | grep php
php71w-cli-7.1.32-1.w6.x86_64
php71w-mbstring-7.1.32-1.w6.x86_64
php71w-pdo-7.1.32-1.w6.x86_64
mod_php71w-7.1.32-1.w6.x86_64
php71w-common-7.1.32-1.w6.x86_64
php71w-mysql-7.1.32-1.w6.x86_64

知道这个对 5.6.8 的引用从何而来以及这是否是一个潜在的问题吗?

答案1

我怀疑您的 PHP 链接到了未正确删除的旧二进制文件,或者您的路径仍然指向旧的二进制文件目录。

情况1

1-执行以下命令并检查 php 链接到的符号链接:

ls -ltr "$(sudo which php)" 

因此你会发现所使用的是哪个版本。

2-检查您的路径并使用新的 php bin 目录更新它:

echo $PATH
sudo  export PATH=$PATH:<php_bin_dir>

3——重建RPM数据库:

sudo rpm -vv --rebuilddb

4-检查旧包是否仍然存在:

sudo rpm -qa | grep php
sudo yum list installed | grep php

案例 2

1-您是否删除了旧的 PHP 包,如果没有,请删除它们并发布新的安装,我建议您使用 epel 和 remi 存储库(禁用所有现有的存储库):

sudo yum remove php*
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
    sudo yum-config-manager --enable remi-php71
    sudo yum update
    sudo yum install php

2- 您是否拥有有效的 RHEL 订阅?如果是,那么您可以在订阅管理器然后启用软件集合 ** 存储库用于安装 rh-php71 并使用 **SCL以启用目标版本。

3- 如果这些都不能帮助你,那么使用 备择方案并将 php71 设置为默认值然后切换到它。

还分享上述命令的输出。

相关内容