CentOS 5.3 yum を使用して php をアップグレードする方法
方法 1 (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
このファイルの最後に次の行を追加します:
優先度=1
保存して終了します。
2 つのファイル /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 にアップグレードされます。
方法 2 (PHP5.2):
または http://oss.oracle.com/
にアクセスしてください。php5.2のrpmパッケージをダウンロードします
方法 3:
#vi /etc/yum.repos.d/utterramblings.repo
を入力してください[とりとめのない発言]
name=ジェイソンのまったくのとりとめのないレポ
Baseurl=http://www.test.com/media/EL$releasever/$basearch/
有効=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 にアップグレードする必要があります。 🎜>
yum 用の rpmforge をインストールします:
yum list mysql php はすべて最新バージョンであることがわかりました。標準の yum ソースは更新されていないようです。
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm wget http://rpms.famillecollet.com/el5.i386/remi-release-5-7.el5.remi.noarch.rpm rpm -Uvh remi-release-5-7.el5.remi.noarch.rpm epel-release-5-4.noarch.rpm yum --enablerepo=remi list mysqlmysql 5.1.44-1.el5.remi にアップグレードできることがわかりました
yum --enablerepo=remi update mysql
アップグレード時に、システムはデフォルトで php を自動的に 5.3 にアップグレードすることがわかりました。また、zend オプティマイザーは現在 Php5.3 をサポートしていないため、ここで php5.3 のアップグレードを禁止する必要があります
vi /etc/yum.conf
最後の行が追加されました
exclude=php*5.3*その後、yum --enablerepo=remi update mysql を実行すると、php のアップグレードは表示されません。
完了:
[root@www.scutephp.com バックアップ]# php -v はまだ古い 5.1.6 です
PHP 5.1.6 (cli) (ビルド: 2010 年 1 月 13 日 17:13:05)
Copyright (c) 1997-2006 PHP グループ
Zend Engine v2.1.0、著作権 (c) 1998-2006 Zend Technologies
Zend Extension Manager v1.2.2 を使用、著作権 (c) 2003-2007、Zend Technologies
Zend Optimizer v3.3.3 を使用、著作権 (c) 1998-2007、Zend Technologies 製
mysql Ver 14.14 配布 5.1.44、readline 5.1 を使用した redhat-linux-gnu (i686) 用
(1) 元の /etc/my.cnf をバックアップし、/etc/my.cnf.rpmnew を my.cnf
に名前変更します。
(2)アップグレードテーブル
mysql_upgrade -p
(3) テーブルを自動修復します
mysqlcheck --all-databases --check-upgrade --auto-repair -p
rpm --import http://repo.webtatic.com/yum/RPM-GPG-KEY-webtatic-andy wget -P /etc/yum.repos.d/ http://repo.webtatic.com/yum/webtatic.repo yum --enablerepo=webtatic list phpphp5.2 と php5.3 がアップグレードできることがわかりました。
php5.3のアップグレードを禁止します
vi /etc/yum.conf
最後の行に
を追加します
exclude=php*5.3*
yum --enablerepo=webtatic --exclude=php*5.3* list php yum --enablerepo=webtatic --exclude=php*5.3* update -y php[root@www]# php -v 5.2.12 にアップグレードしました。これで終わりです。
PHP 5.2.12 (cli) (ビルド: 2009 年 12 月 17 日 19:40:56)
Copyright (c) 1997-2009 PHP グループ
Zend Engine v2.2.0、著作権 (c) 1998-2009 Zend Technologies
Zend Extension Manager v1.2.2 を使用、著作権 (c) 2003-2007、Zend Technologies 製
Zend Optimizer v3.3.3 を使用、著作権 (c) 1998-2007、Zend Technologies 製
yum のダウングレードを許可します:
yum install yum-allowdowngrade
yum.conf に行を追加します:showdupesfromrepos=1
その後、すべての PHP パッケージをリストします:
yum list php
php 5.2.8 が利用可能な場合は、新しいものを削除します:
php を削除してください
古いものをインストールします:
yum --allow-downgrade install php-5.2.8