CentOS6のPHP5.3をPHP5.4に入れ替える

  • 71
    Like
  • 1
    Comment
More than 1 year has passed since last update.

追記:PHP5.5のインストール方法を投稿しました(2013/10/04)
http://qiita.com/pakiln/items/bcddcdd96e94dab96873


CentOS6のPHPはバージョン5.3.2で新しくはありません。
IUS(http://dl.iuscommunity.org/pub/ius/stable/Redhat/ )にPHP5.3系とPHP5.4系の新しいパッケージが用意されているのでその5.4に差し替えます。

手順はIUSのリポジトリを追加、それからCentOSデフォルトのPHP5.3をアンインストールして、IUSのPHP5.4をインストールです。

まずIUSリポジトリの追加。EPELリポジトリも必要らしいのでまとめて追加します。

$ wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/epel-release-6-5.noarch.rpm
$ wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/ius-release-1.0-11.ius.el6.noarch.rpm
$ sudo rpm -ivh epel-release-6-5.noarch.rpm ius-release-1.0-11.ius.el6.noarch.rpm

なお、上記はCentOS6の64ビット版の場合です。CentOS5または32ビット版が欲しい場合は次のサイトから該当するepel-releaseとius-releaseのrpmをダウンロードしてください。
http://dl.iuscommunity.org/pub/ius/stable/Redhat

次にインストール済みのPHP5.3パッケージを調べます。

$ rpm -qa | grep php
php-common-5.3.3-22.el6.x86_64
php-cli-5.3.3-22.el6.x86_64
php-devel-5.3.3-22.el6.x86_64
php-5.3.3-22.el6.x86_64
php-pear-1.9.4-4.el6.noarch
php-xml-5.3.3-22.el6.x86_64

それらを全て削除します。php.iniを変更していれば勝手にバックアップを取ってくれます。

$ sudo yum erase php php-devel php-common php-cli php-pear php-xml
(中略)
警告: /etc/php.ini は /etc/php.ini.rpmsave として保存されました。
(中略)

そしてPHP5.4のパッケージをインストールして、PHPバージョンの入れ替え完了です。

$ sudo yum install php54 php54-devel php54-common php54-cli php54-pear php54-xml

上記のphp54がIUSのPHP5.4を指します。
ちなみに各パッケージの出所はyum infoコマンドのReleaseで確認できます。

$ yum info php54
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * ius: ftp.neowiz.com
 * updates: ftp.riken.jp
Installed Packages
Name        : php54
Arch        : x86_64
Version     : 5.4.16
Release     : 1.ius.el6
Size        : 9.1 M
Repo        : installed
From repo   : ius

補足。

IUSのPHP5.3はパッケージ名にphp53uを含みます。
現在、PHP5.3.26が用意されているので5.3系のバージョンを上げたいときにもIUSは有用だと思います。
5.3系が必要ならyum searchコマンドでパッケージを確認してインストールしてください。

$ yum search php53u