[转]How to install PHP 5.3 on CentOS

   2023-02-10 学习力0
核心提示:在DIAHosting买了一个VPS,自带PHP5.1.6.我想安装wordpress,但是由于版本比较新,要求PHP也要是5.2以上的,于是我就安装了PHP5.3.20--------------------------------------------------------------------------------------------------------------------

在DIAHosting买了一个VPS,自带PHP5.1.6.我想安装wordpress,但是由于版本比较新,要求PHP也要是5.2以上的,于是我就安装了PHP5.3.20

----------------------------------------------------------------------------------------------------------------------------

By David Gewirtz

Let's talk about PHP for a moment. In particular, let's talk about PHP's release history. PHP 5.1 was released in 2005. PHP 5.2 was released almost exactly a year later, in 2006. PHP 5.3, on the other hand, took four more years -- until 2009 -- to be released.

Now, there's a reason 5.3 took so long. There was a profound change to the language: namespaces. PHP is pretty much of an ad-hoc language, and without namespaces, object names had a tendency to run over each other. Namespaces changes that, so 5.3 was a big load of work. Now, personally, I'm not thrilled with exactly how PHP implemented namespaces, but that's a geekout for another article.

Anyway, the point is this: PHP 5.3 has been out for two years and has gone through five subsequent updated, bringing the current release to PHP 5.3.5.

Why am I telling you all this?

I'm telling you all this because CentOS, the community enterprise version Redhat's Fedora core, only supports PHP 5.1, a version of the language that's now more than five years -- more than 1,900 days -- old.

I like CentOS and one of our favorite ISPs uses CentOS 5.5. But when you install CentOS 5.5 (the latest release), you get what's essentially an archaic version of PHP. Yes, I know that sometimes the bugs haven't been pounded out, and when PHP 5.3 was released, there were bugs. But now that PHP 5.3 itself is two years old, it's a pretty solid beast.

So, net-net-net, if you want to run CentOS 5.5 and PHP 5.3, you have to modify your system.

Updating to PHP 5.3

This takes a number of steps. You need to remove the old PHP and install the new one. Because I wanted a PHP that's tuned for CentOS, I wanted to use existing PHP packages. But here's the rub: the official CentOS package repository doesn't support PHP 5.3 (or PHP 5.2, for that matter).

The first thing you'll need to do is add new repositories to your system. The following three commands will do the trick.

 # rpm -Uhv http:\//apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
 # rpm -Uvh http:\//download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
 # rpm -Uvh http:\//dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1.0-6.ius.el5.noarch.rpm

It should be noted that these versions move around all the time and you may have to do some poking around on the sites. I originally found references to these builds as epel-release-5-3, which didn't work, but I found epel-release-5-4, and since that worked, I went ahead and used that.

Once you've added repositories, you can use the yum package manager to install PHP. First, assuming you have a basic CentOS install, you'll need to remove PHP and it's associated friends. Here's how:

 # yum erase php php-pear php-mysql php-cli php-common

Then, you can go ahead and install PHP 5.3. I used the following commands. I broke them up simply because it was easier to present in the article, but you could string all the packages together on one command line.

 # yum install php53u php53u-pear php53u-cli php53u-common php53u-gd
 # yum install php53u-mbstring php53u-mcrypt php53u-mysql php53u-soap
 # yum install php53u-xml php53u-xmlrpc php53u-bcmath

If you'd prefer to install 5.2, you can do so with this set of commands:

 # yum install php52 php52-pear php52-cli php52-common php52-gd
 # yum install php52-mbstring php52-mcrypt php52-mysql php52-soap
 # yum install php52-xml php52-xmlrpc php52-bcmath

There you go. Simply type "php -v" to your command line to verify the install.

Word of warning

One final word of warning: screwing with your package manager could break your Linux install. I followed one guide and the result was that yum wanted to uninstall just about everything. I caught it in time and stopped, but baaaaad things could happen.

Bad things could even happen if you follow my directions. So if you do this, make sure you think through your steps and know what you're doing. If you break your Linux distro, I can't help you fix it. So, you know, you were warned!

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 用Xshell设置CentOS密钥登录
    用Xshell设置CentOS密钥登录
    今天带来设置X shell 密钥登录  因为用的中文x shell 所以按照中文设置很简单1.点击工具(Tools)------新建用户密钥生成向导(New User key Wizard)(附图)2.然后出现下图时,记得密钥类型 选择RSA.其实选择DSA ,也能实现,二者其实是不同的算法。(我用的R
    03-08
  • centOS下安装Adobe Flash Player
    centOS下安装Adobe Flash Player
    centOS下安装Adobe Flash Player  2009-10-09 11:29:33|  分类:linux|  标签: |订阅 写出来就这么简单几步,当初刚接触Linux的时候搜索了很长时间,找了很多资料,总是出现这样那样的问题,最后终于摸索出最简单最有效的安装的方法。 随便打开一个带
    03-08
  • 部署Node.js项目(CentOS) node项目搭建
    部署Node.js项目(CentOS) node项目搭建
    操作步骤步骤 1:创建ECS实例选择操作系统为公共镜像CentOS7.2。使用root用户登录Linux实例。步骤2:部署Node.js环境—二进制文件安装该部署过程使用的安装包是已编译好的二进制文件,解压之后,在bin文件夹中就已存在node和npm,无需手工编译。安装步骤:1、
    02-10
  • centos安装python与jdk centos安装python3.7
    centos安装python与jdk centos安装python3.7
    安装python#压缩包安装[root@china ~]# yum -y install zlib*Loaded plugins: fastestmirror, refresh-packagekit, securityLoading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun
    02-10
  • centos6下同时安装python2和python3
    #build-essential compile packagesyum groupinstall "Development Tools"yum install openssl-develyum install zlib-develyum install make gcc gcc-c++ kernel-develhttp://unix.stackexchange.com/questions/291737/zipimport-zipimporterror-cant-decomp
    02-10
  • CentOS下查看文件和文件夹大小 linux查看文件夹
    当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。  df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。  df可以查
    02-10
  • centos7 离线升级/在线升级操作系统内核
    centos7 离线升级/在线升级操作系统内核
    centos7 离线升级/在线升级操作系统内核目录一.前言二.系统环境三.系统内核下载网址四.centos7离线升级系统内核1.先查看系统环境2.离线升级系统内核五.在线升级系统内核一.前言CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于
    02-10
  • centos7 rc.local脚本执行不成功
    腾讯云 centos7   配置文件/etc/rc.local的内容如下:#!/bin/sh#secu_agent init monitor, install at Thu Aug 3 11:19:41 CST 2017/usr/local/sa/agent/init_check.sh/dev/null 21/usr/sbin/ntpdate ntpupdate.tencentyun.com /dev/null 21 /usr/local/qclo
    02-10
  • 如何在centos7启动时自动挂载硬盘
    在/etc/rc.local中加入如下的语句,这样就不用每次重启后手动挂载了(后面挂载的目录根据自己的需求而定):mount  /dev/sdb1 /usr/sharedfiles/sdbmount  /dev/sdc1 /usr/sharedfiles/sdcmount  /dev/sdb1 /root/sdbmount  /dev/sdc1 /root/sdc注意:可以
    02-10
  • centos7.2 开启防火墙
    开启防火墙当我们修改了某些配置之后(尤其是配置文件的修改),firewall并不会立即生效。可以通过两种方式来激活最新配置 systemctl restart firewalld 和 firewall-cmd --reload 两种方式,前一种是重启firewalld服务,建议使用后一种“重载配置文件”
    02-10
点击排行