CentOS 5.3 通過yum升級php的方法
方法一(PHP5.3):
CentOS5.3的php版本預設為5.1.6,然後在5.2.9版本之前的的php都存在一個漏洞,但是目前網上很多地方都無法使用yum update php*升級到5.2.9,比較常見的是升級到5.2.6版本的,經過搜尋國外資料,現在終於找到一種升級CentOS的php到5.2.9的方法。
注意,此方法只能在官方的php版本上升級,如果你使用網上的升級到5.2.6版本的升級方法已經升級了,將無法使用本方法升級php。
運行下面命令:
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/5/remi/i386/remi-release-5-7.el5.remi.noarch.rpm
rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm
然後編輯/etc/yum.repos.d/remi.repo
#vi /etc/yum.repos.d/remi.repo
在這個檔案的最後增加一行:
priority=1
儲存退出。
/etc/yum.repos.d/epel.repo和/etc/yum.repos.d/epel-testing.repo這兩個檔案也按照上面的方法進行編輯!
使用下面的命令進行升級,但是經過測試,如果單獨升級php將提示失敗,只有連同mysql一起升級才可以,所以我們必須執行以下命令才能升級php到5.2.9版本:
yum –-enablerepo=remi update php* mysql*
注意:此方法將 php 升級 到 5.3了。
方法二(PHP5.2):
或者 去 http://oss.oracle.com/
下再 php5.2的rpm包
方法三:
#vi /etc/yum.repos.d/utterramblings.repo
輸入
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.test.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.test.com/media/RPM-GPG-KEY-jlitka
最後
yum update php -y
現在我用的就是通過 這種方式裝的,升級之後版本
php-5.2.11
httpd-2.2.14
Centos5.4(webmin)中Yum升級mysql5.1和php5.2(禁止php5.3) centos5.3,centos5.4安裝webmin預設的是 mysql 5.0,php5.1 我需要升級到
mysql5.1和php5.2(禁止php5.3),怎麼辦?
給yum安裝rpmforge:
yum list mysql php 發現都是最新版本了,看來標準的yum源沒有更新
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpmwget http://rpms.famillecollet.com/el5.i386/remi-release-5-7.el5.remi.noarch.rpmrpm -Uvh remi-release-5-7.el5.remi.noarch.rpm epel-release-5-4.noarch.rpmyum --enablerepo=remi list mysql
發現可以升級到 mysql 5.1.44-1.el5.remi
yum --enablerepo=remi update mysql
發現升級時系統會預設自動把php也一併升級到 5.3,而zend optimizer 目前不支援 Php5.3,所以這裡需要禁止升級php5.3
vi /etc/yum.conf
最後一行增加
exclude=php*5.3*
然後再yum --enablerepo=remi update mysql,就看不到php的升級了.
搞定:
[root@www.scutephp.com backup]# php -v 還是舊的5.1.6
PHP 5.1.6 (cli) (built: Jan 13 2010 17:13:05)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
[root@www]# mysql -V 升級到5.1.44了
mysql Ver 14.14 Distrib 5.1.44, for redhat-linux-gnu (i686) using readline 5.1
升級mysql 5.1.41-1之後,請執行以下操作:
(1)將原有的/etc/my.cnf備份,將/etc/my.cnf.rpmnew改名為my.cnf
(2)升級table
mysql_upgrade -p
(3)自動修複table
mysqlcheck --all-databases --check-upgrade --auto-repair -p
找到一個yum源,有php5.2,方法如下:
rpm --import http://repo.webtatic.com/yum/RPM-GPG-KEY-webtatic-andywget -P /etc/yum.repos.d/ http://repo.webtatic.com/yum/webtatic.repoyum --enablerepo=webtatic list php
發現有php5.2 和 php5.3可以升級,
我們禁止升級php5.3
vi /etc/yum.conf
最後一行增加
exclude=php*5.3*
或者:
yum --enablerepo=webtatic --exclude=php*5.3* list phpyum --enablerepo=webtatic --exclude=php*5.3* update -y php
[root@www]# php -v 升級到5.2.12了,收工!
PHP 5.2.12 (cli) (built: Dec 17 2009 19:40:56)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
yum-allowdowngrade 可以降級的外掛程式:
allow downgrade for yum:
yum install yum-allowdowngrade
Add a line to yum.conf:
showdupesfromrepos=1
After that list all php packages:
yum list php
If php 5.2.8 is available, remove new one:
yum remove php
and install an old one:
yum --allow-downgrade install php-5.2.8