AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 111458
Accepted
solsol
solsol
Asked: 2010-02-11 00:19:10 +0800 CST2010-02-11 00:19:10 +0800 CST 2010-02-11 00:19:10 +0800 CST

升级 Centos 5 tot PHP 5.2 或 5.3 [推荐方式?]

  • 772

我们正在使用 Zend Framework,在版本 2 中,php 5.2 将是最低要求。我们喜欢 CentOS,我们希望继续使用它,但 PHP 5.1 不再适用于使用 Zend 框架开发 Web 应用程序。

我找到了几个指向使用外部存储库升级的解决方案的链接。

在 CentOS 5.4 上将 PHP 5.1.6 升级到 5.2.x 的推荐方法

http://www.webtatic.com/blog/2009/05/installing-php-526-on-centos-5/

http://www.webtatic.com/blog/2009/06/php-530-on-centos-5/

我们希望看到另一种使用“官方”的解决方案?CentOS 存储库(如果有)。

我们只需要升级 PHP,其余的 CentOS 设置就可以了。对我们来说,重要的是使用正常的存储库保持 YUM 循环完整。

简而言之:是否甚至可以通过使用外部存储库或其他方式仅升级 PHP?同时仍然通过正常的 yum 使用安全地升级我们所有的其他软件包?

谢谢你的帮助!

php5 centos5
  • 5 5 个回答
  • 11535 Views

5 个回答

  • Voted
  1. hobodave
    2010-12-21T22:32:16+08:002010-12-21T22:32:16+08:00

    我希望我能在被问到这个问题时看到这个问题。您应该非常有选择性地从哪个 3rd 方存储库安装软件包。许多人不遵循打包最佳实践,并且大多数人不确保不冲突的包名称。你可以很容易地把你的系统弄得一团糟。针对这个最近的问题,我给出了以下答案。


    我强烈建议使用IUS 社区项目存储库来升级您的 PHP 5.2,甚至是 CentOS 5 上的 PHP 5.3 软件包。这些是一组维护良好和高质量的软件包,由Rackspace使用和维护,但不受他们支持(除非你当然是客户)。

    如果您是新手,安装说明可能会有点难找。您正在他们的 wiki 上寻找客户端使用指南。为了便于使用,我将在此处复制说明。

    [root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1.0-6.ius.el5.noarch.rpm 
    
    [root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-1-1.ius.el5.noarch.rpm
    
    [root@linuxbox ~]# rpm -Uvh ius-release*.rpm epel-release*.rpm
    

    这将为您下载并安装EPEL和 IUS 存储库。

    IUS 承诺不会使用与任何官方 repos 冲突的包名称,包括 EPEL(这是一件好事),事情并不像yum upgrade php. 您需要先卸载所有现有的 PHP 包,然后从 IUS 安装适当的包。或者,您可以使用该yum-plugin-replace插件向 YUM 添加有用的“替换”功能。


    手动

    第一的:

    [root@linuxbox ~]# rpm -qa | grep php
    
    [root@linuxbox ~]# yum erase php
    
    • rpm -qa | grep php列出每个已安装的 PHP 包。您将使用此列表从 IUS 安装所有适当的单个 PHP 包
    • yum erase php命令只是删除 PHP 和它的依赖包

    最后:

    [root@linuxbox ~]# yum search php52
    
    [root@linuxbox ~]# yum install php52 php52-common php52-pecl-apc php52-mysql ...
    
    • yum search php52列出可用的 PHP 5.2 包
    • yum install安装您选择的 PHP 5.2 软件包。您将使用在第一步中获得的列表来确定您需要哪个

    百胜插件替换

    [root@linuxbox ~]# yum install yum-plugin-replace
    
    [root@linuxbox ~]# yum replace php --replace-with php52
    

    这将神奇地确定要删除哪些 PHP 包,以及为您安装哪些匹配的 php52 包。

    • 9
  2. Best Answer
    Andy
    2010-02-11T02:25:37+08:002010-02-11T02:25:37+08:00

    出色的Remi拥有适用于旧版发行版的最新 PHP 版本——我最近将 Fedora 6 升级到 PHP 5.3。如上所述安装密钥后,您可以像这样安装PHP 5.3.1:

    yum --enablerepo=remi update php-\*
    

    这不会影响从标准存储库进行正常升级/安装,因为“remi”是一个单独的存储库,除了在这个单一请求期间之外不活动。

    • 1
  3. DennyHalim.com
    2010-03-14T03:53:31+08:002010-03-14T03:53:31+08:00

    有很多个人的 php 仓库。只要确保你信任管理回购的人。另外,请确保该人确实管理回购而不是构建一次然后忘记它......

    这里有替代方法:

    A. 原子回购: http: //www.atomicorp.com/wiki/index.php/PHP

    B. centos 开发/测试回购:

    • wget http://dev.centos.org/centos/5/CentOS-Testing.repo -O /etc/yum.repos.d/CentOS-Testing.repo
    • yum –enablerepo=CentOS-5\ 测试安装php
    • 0
  4. Embreau
    2010-03-14T04:32:48+08:002010-03-14T04:32:48+08:00

    有很多方法可以做到这一点。

    升级到最新版本的官方方法是 CentOS Developpement 存储库,位于:http: //dev.centos.org/centos/5/testing/x86_64/RPMS或编译它。

    如果您绝对需要由 YUM 安装 5.3,则需要使用不受支持的存储库。我所知道的最好的 YUM 存储库如下:
    RPMForge
    ART(Atomic Rocket Turtle)
    您会发现周围还有很多由一两个人维护的其他存储库。只要确保你只更新 php 包。

    • 0
  5. siposa
    2010-02-11T00:35:22+08:002010-02-11T00:35:22+08:00

    我正在使用 Zend Server 社区版。它有一个 YUM 存储库: http: //files.zend.com/help/Zend-Server/rpm_installation.htm

    • -1

相关问题

  • Apache 在配置 eAccelerator 和 FastCGI 后从不运行

  • Debian 上 php5 和 php5-cli 软件包的区别

  • apache在php中与exec崩溃

  • 为什么PHP脚本的工作许可在服务器之间有所不同?

  • 从 PHP 5.1.6 升级到 5.2.9 的问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve