PHPをyumでバージョンアップする手順
phpのバージョンを5.1.6から5.2.16へバージョンアップしたときの備忘録です。
# php -v PHP 5.1.6 (cli) (built: Nov 29 2010 16:47:37) Copyright (c) 1997-2006 The PHP Group Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
1.リポジトリ設定
# rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
# vi /etc/yum.repos.d/utterramblings.repo
※下記を追記する
[utterramblings]
name=Jason’s Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
2.yumでのアップデート
# yum -y update php
3.リポジトリ設定ファイル編集
yum実行後、手順1で編集したファイルの一箇所を修正。
# vi /etc/yum.repos.d/utterramblings.repo
enabled=0
4.バージョンアップ完了の確認
Apacheを再起動後、PHPのバージョンアップを確認して完了。
# /etc/init.d/httpd restart # php -v PHP 5.2.16 (cli) (built: Dec 17 2010 14:09:03) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
エラーが出る場合の対処法
自分の環境では、下記のようなエラーがぞろぞろ出たので、一度PHPを再インストールしてみました。
PHP Warning: PHP Startup: fileinfo: Unable to initialize module Module compiled with module API=20050922, debug=0, thread-safety=0 PHP compiled with module API=20060613, debug=0, thread-safety=0 These options need to match
# yum -y remove 'php*'
手順1を行って、下記コマンド実行。
# yum -y install php
php -vコマンドを実行し、エラーが出力されないことを確認して完了です。
ただし"remove 'php*'"でPHPのモジュールが全部アンインストールされてしまっているので、後で適宜個別でインストールしなおすことにします。
PHPモジュールの個別追加についての参考記事:yumでphpのモジュールを個別追加 - シナプスソフトプログラマのブログ
- PHPのバージョンアップは非常にデリケートな問題で、バージョンアップ後にWEBアプリが動作しなくなることも珍しくありません。この記事の内容の実践は自己責任でお願い致します。
- この記事の内容はテストサーバで行って下さい。
最終更新 2011-01-21

この記事へのコメント
まだコメントは投稿されていません。