在CentOS 6.5上升级PHP(最终版)

时间:2014-02-01 19:41:21

标签: php yum centos6

我正在尝试更新我的PHP(目前v:5.3.3到最新稳定的PHP版本),但它不是在玩球,它说没有什么可以更新的。

任何帮助都会有用。

继续说:

  

没有标记为更新的包

7 个答案:

答案 0 :(得分:122)

正如Jacob所说,CentOS软件包repo似乎目前仅提供PHP 5.3。但这些命令似乎对我有用......

rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
yum remove php-common       # Need to remove this, otherwise it conflicts
yum install php56w
yum install php56w-mysql
yum install php56w-common
yum install php56w-pdo
yum install php56w-opcache
php --version               # Verify version has been upgraded

如果需要,您也可以使用php54wphp55w

<强> 小心!
如果它没有完全解决所有依赖关系,这可能会破坏您的网站,因此在某些情况下您可能需要一些额外的包。 See here获取可用的其他PHP 5.6模块的列表。

如果遇到问题并需要重置为默认值,可以使用以下命令:

sudo yum remove php56w
sudo yum remove php56w-common
sudo yum install php-common
sudo yum install php-mysql
sudo yum install php

(感谢Fabrizio Bartolomucci)

答案 1 :(得分:29)

对于CentOS 6,PHP 5.3.3是通过official CentOS package repository提供的PHP的最新版本。请记住,即使PHP 5.3.3 was released July 22, 2010,官方的CentOS 6 PHP软件包已于2013年11月24日更新。为什么?关键错误修复被反向移植。有关详细信息,请参阅此问题:"Why are outdated packages installed by yum on CentOS? (specifically PHP 5.1) How to fix?"

如果您想使用更新版本的PHP,Les RPM de Remi会通过您可以添加到yum软件包管理器的存储库提供CentOS PHP软件包。要将其添加为yum存储库,follow the site's instructions

注意:此类问题可能更适合Server Fault

答案 2 :(得分:8)

我设法根据Simon的建议安装php54w,但随后我的网站停止运行可能是因为与php-mysql或其他模块不兼容。即使疯狂地恢复旧的情况也不是很有趣:对于我自己的情况来说,顺序是:

sudo yum remove php54w
sudo yum remove php54w-common
sudo yum install php-common
sudo yum install php-mysql
sudo yum install php

如果有人提交了更新所有php数据包的完整程序,那就太好了。那是我的生产服务器,我的心脏仍在快速跳动。

答案 3 :(得分:6)

这是对我有用的最简单方法:在CentOS 6或7上安装PHP 5.6:

CentOS 6.按所示顺序输入以下命令:

yum -y update
yum -y install epel-release
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
wget https://centos6.iuscommunity.org/ius-release.rpm
rpm -Uvh ius-release*.rpm
yum -y update
yum -y install php56u php56u-opcache php56u-xml php56u-mcrypt php56u-gd php56u-devel php56u-mysql php56u-intl php56u-mbstring php56u-bcmath

CentOS 7.按所示顺序输入以下命令:

yum -y update
yum -y install epel-release
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget https://centos7.iuscommunity.org/ius-release.rpm
rpm -Uvh ius-release*.rpm
yum -y update
yum -y install php56u php56u-opcache php56u-xml php56u-mcrypt php56u-gd php56u-devel php56u-mysql php56u-intl php56u-mbstring php56u-bcmath

抱歉 - 由于声誉

,我无法发布源网址

答案 4 :(得分:4)

  1. 验证PHP的当前版本 输入以下内容以查看当前的PHP版本:

    php -v

    应输出如下内容:

    PHP 5.3.3(cli)(建于2015年7月9日17:39:00) 版权所有(c)1997-2010 PHP小组 Zend Engine v2.3.0,版权所有(c)1998-2010 Zend Technologies

  2. 安装Remi和EPEL RPM存储库

  3. 如果您尚未安装,请安装Remi和EPEL存储库

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

    全局启用REMI存储库:

    nano /etc/yum.repos.d/remi.repo
    

    在看起来像[remi]的部分中进行以下更改:

    [remi]
    name=Remi's RPM repository for Enterprise Linux 6 - $basearch
    #baseurl=http://rpms.remirepo.net/enterprise/6/remi/$basearch/
    mirrorlist=http://rpms.remirepo.net/enterprise/6/remi/mirror
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
    

    此外,在看起来像[remi-php55]的部分下进行以下更改:

    [remi-php56]
    name=Remi's PHP 5.6 RPM repository for Enterprise Linux 6 - $basearch
    #baseurl=http://rpms.remirepo.net/enterprise/6/php56/$basearch/
    mirrorlist=http://rpms.remirepo.net/enterprise/6/php56/mirror
    # WARNING: If you enable this repository, you must also enable "remi"
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
    

    键入CTRL-O保存,按CTRL-X键关闭编辑器

    1. 将PHP 5.3升级到PHP 5.6 现在我们可以升级PHP了。只需输入以下命令:

      yum -y升级php *

    2. 更新完成后,让我们验证您安装了PHP 5.6:

      php -v
      

      应该看到类似于以下内容的输出:

      PHP 5.6.14 (cli) (built: Sep 30 2015 14:07:43) 
      Copyright (c) 1997-2015 The PHP Group
      Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
      

答案 5 :(得分:0)

IUS提供了一个安装脚本,用于订阅其存储库并导入相关的GPG密钥。确保您位于主目录中,并使用curl:

检索脚本
curl 'https://setup.ius.io/' -o setup-ius.sh
sudo bash setup-ius.sh

安装必需的软件包 - :

sudo yum install -y mod_php70u php70u-cli php70u-mysqlnd php70u-json php70u-gd php70u-dom php70u-simplexml php70u-mcrypt php70u-intl

有关详细信息,请访问My Article

答案 6 :(得分:0)

在CentOS 6系统上升级到PHP7的步骤。取自install-php-7-in-centos-6

要安装最新的PHP 7,您需要将EPEL和Remi存储库添加到CentOS 6系统中

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
yum install http://rpms.remirepo.net/enterprise/remi-release-6.rpm

现在安装yum-utils,这是一组有用的工具,可以增强yum的默认软件包管理功能

yum install yum-utils

在此步骤中,您需要使用yum-config-manager实用程序启用Remi存储库,作为安装PHP的默认存储库。

yum-config-manager --enable remi-php70

如果要在CentOS 6上安装PHP 7.1或PHP 7.2,只需如图所示启用它即可。

yum-config-manager --enable remi-php71 
yum-config-manager --enable remi-php72

然后最后使用以下命令在CentOS 6上安装PHP 7和所有必需的PHP模块。

yum install php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo

仔细检查系统上PHP的安装版本,如下所示。

php -V