我在 CentOS 6.5(64 位)机器上通过yum
.
据我所知,它不是 CentOS、EPEL 或 REMI 存储库的一部分。我使用这些存储库得到 5.4.29。
答案1
对于 RHEL 和 CentOS 等发行版,它们的生命周期通常为 7-10 年,很难让它们保持最新版本。您唯一的选择是:
- 没有它就去吧
- 自己从源代码构建它
- 使用提供替代包的第三方存储库
我通常选择#3。您可以使用此存储库来安装 5.5:
要安装存储库:
$ sudo rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
要安装软件包:
$ sudo yum install php55w php55w-opcache
这是以这种方式提供软件包的许多第三方存储库之一。在开始使用这些存储库之前,请务必确保您可以使用它们。有些比其他更好,但我在使用他们的软件包构建时从未遇到过问题。
使用雷米回购
这个存储库确实提供了 PHP 5.5 包,您只需要知道如何告诉它这就是您想要的。
设置存储库(如果尚未设置)
$ sudo wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
$ sudo wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
$ sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
这会将 PHP 从 5.3.3 升级到 PHP 5.4.24(2014 年 1 月 15 日)。
$ sudo yum --enablerepo=remi update -y
如果您想要最新的 PHP 版本 5.5.x,您必须运行以下命令:
$ sudo yum --enablerepo=remi,remi-php55 update -y
参考
答案2
你不需要第 3 方存储库,有 SCL: https://wiki.centos.org/AdditionalResources/Repositories/SCL
wiki 很旧,目前支持 php 5.6。安装 SCL 后,执行“yum search rh-php56”,您将看到所有 php 5.6 相关的软件包。
问题是所有 SCL 软件包都没有安装在常用目录中,因此它们可以与其他版本共存。它们安装在 /opt 下,使用类似 chroot 的树。这可能是你想要的,也可能不是。
答案3
您通常不会在发行版的包管理器中找到最新版本的软件。除非软件包具有关键的安全补丁,否则当版本进入测试时,通过软件包管理器提供的版本是必须的当前版本冻结。
冻结 - 在冻结期间,测试发行版的开发被阻止;不再允许自动更新。只有发布经理才有权根据自己的标准更改包。目的是通过引入新版本来防止新错误的出现;只有经过彻底检查的更新在纠正重大错误后才会被授权。
您必须php
从源代码构建,创建自己的 rpm/repo,或者找到已经构建了 rpm 并使其可用的第三方