php56w-common 与旧版本的 php 冲突(Centos)

php56w-common 与旧版本的 php 冲突(Centos)

我正在尝试更新我的 vagrant box 以使用 PHP 5.6,并且我基本上在命令行上执行以下过程。

  • sudo yum remove php* (删除 PHP)
  • 获得http://rpms.famillecollet.com/enterprise/remi-release-6.rpm(安装最新的 remi repo:)rpm -Uvh remi-release-6*.rpm
  • 安装 php php-common php-devel php-fpm php-gd php-mbstring php-mcrypt php-mysqlnd php-pdo php-pear php-soap php-xml php-pecl-apcu php-pecl-xdebug php-pecl-amqp

前两个步骤似乎很好,但是在执行“安装过程”的最后一步时出现以下错误:

Error: php56w-common conflicts with php-common-5.3.3-46.el6_6.x86_64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

我需要所有与 PHP 5.6 兼容的上述模块,有人可以建议我下一步该怎么做才能让它正常工作吗?

答案1

你应该做

sudo yum install php56w php56w-common...

代替

sudo yum install php php-common,...

答案2

使用 remi 存储库,您需要启用与所需版本匹配的存储库,因此对于 5.6:

yum-config-manager --enable remi-php56

然后使用常用的 yum 命令。

答案3

大家好 - 在阅读你们的帖子之前我已经找到了解决方案,因此使用了此网站上的方法

https://www.mojowill.com/geek/howto-install-php-5-4-5-5-or-5-6-on-centos-6-and-centos-7/

简而言之,我做了以下事情:

CentOS 6 安装

wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm

启用 repo 修改/etc/yum.repos.d/remi.repo文件

[remi]
name=Les RPM de remi pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/remi/mirror
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

然后在同一个文件中有一个 php56 部分,我将启用标志从 0 设置为 1,然后就好了!下次我运行 yumo install 命令时,一切都顺利通过,没有任何错误。

例如

sudo yum install php php-gd php-mysql php-mcrypt

相关内容