PHP5.1→PHP5.3へバージョンアップする方法(CentOS)




CentOSでPHPをバージョンアップする方法です。

PHP5.1系からPHP5.3系にバージョンアップしてみました。
WordPressを使っていると、
「WordPress 3.2」から「PHP5.2.4以上」の環境が必要になっており、PHP5.1 系だと最新のWordPressが動きません。
最新のWordPressを使ってみたいので、PHPのバージョンを上げることにしました。

インストールされているPHPのバージョンの確認

# php-v

 
結果

PHP 5.x.x (cli) (built: Jun 27 2012 12:25:48)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

 

インストールされているPHP関連パッケージの確認

rpm -qa | grep php

 
結果

phpMyAdmin-2.11.11.3-2.el5
php-pear-Mail-Mime-1.5.2-5
php-xmlrpc-5.1.6-27.el5_5.3
php-mbstring-5.1.6-27.el5_5.3
php-mcrypt-5.1.6-15.el5.centos.1
php-pear-Mail-mimeDecode-1.5.0-4
php-common-5.1.6-27.el5_5.3
php-dba-5.1.6-27.el5_5.3
php-soap-5.1.6-27.el5_5.3
php-mysql-5.1.6-27.el5_5.3
php-cli-5.1.6-27.el5_5.3
phpPgAdmin-5.0.2-1.el5
php-bcmath-5.1.6-27.el5_5.3
php-ncurses-5.1.6-27.el5_5.3
php-pgsql-5.1.6-27.el5_5.3
php-5.1.6-27.el5_5.3
php-imap-5.1.6-27.el5_5.3
php-devel-5.1.6-27.el5_5.3
lgel-webadmin-phpmyadmin-2.11.9.3-1.r4.9
php-pdo-5.1.6-27.el5_5.3
php-xml-5.1.6-27.el5_5.3
php-pear-1.6.2-3
php-gd-5.1.6-27.el5_5.3
lgel-webadmin-phppgadmin-4.2.2-1.r4.9

 

CentOSのphp53関連パッケージの確認

# yum list php53*

 
結果

Available Packages
php53.x86_64 5.3.3-1.el5_7.3 updates
php53-bcmath.x86_64 5.3.3-1.el5_7.3 updates
php53-cli.x86_64 5.3.3-1.el5_7.3 updates
php53-common.x86_64 5.3.3-1.el5_7.3 updates
php53-dba.x86_64 5.3.3-1.el5_7.3 updates
php53-devel.x86_64 5.3.3-1.el5_7.3 updates
php53-gd.x86_64 5.3.3-1.el5_7.3 updates
php53-imap.x86_64 5.3.3-1.el5_7.3 updates
php53-intl.x86_64 5.3.3-1.el5_7.3 updates
php53-ldap.x86_64 5.3.3-1.el5_7.3 updates
php53-mbstring.x86_64 5.3.3-1.el5_7.3 updates
php53-mysql.x86_64 5.3.3-1.el5_7.3 updates
php53-odbc.x86_64 5.3.3-1.el5_7.3 updates
php53-pdo.x86_64 5.3.3-1.el5_7.3 updates
php53-pgsql.x86_64 5.3.3-1.el5_7.3 updates
php53-process.x86_64 5.3.3-1.el5_7.3 updates
php53-pspell.x86_64 5.3.3-1.el5_7.3 updates
php53-snmp.x86_64 5.3.3-1.el5_7.3 updates
php53-soap.x86_64 5.3.3-1.el5_7.3 updates
php53-xml.x86_64 5.3.3-1.el5_7.3 updates
php53-xmlrpc.x86_64 5

※インストールに失敗したときに困るので、上記のパッケージ情報は保存しておいたほうが良いですね。

 

Apache(ウェブサーバー)の停止

新しいPHPのバージョンをインストールするのに、下記のような手順で進めます。
・Apacheの停止
・PHP旧バージョンの削除
・PHP新バージョンのインストール
・Apacheの起動

まず、Apacheを停止しましょう。

# /etc/rc.d/init.d/httpd stop

 
結果

httpd を停止中:

 

PHP5.1の削除

yum remove php php-*

処理途中でyesと回答する部分があります。

Setting up Remove Process
Resolving Dependencies
–> Running transaction check
—> Package php.x86_64 0:5.1.6-27.el5_5.3 set to be erased

~中略~

Dependency Removed:
lgel-webadmin-phpmyadmin.noarch 0:2.11.9.3-1.r4.9
lgel-webadmin-phppgadmin.noarch 0:4.2.2-1.r4.9
phpMyAdmin.noarch 0:2.11.11.3-2.el5
phpPgAdmin.noarch 0:5.0.2-1.el5

Complete!

 

php53のインストール

# yum install php53 php53-mbstring php53-mysql

 
こちらも途中で一回yesと回答するところがあります。

結果

Setting up Install Process
Resolving Dependencies
–> Running transaction check
—> Package php53.x86_64 0:5.3.3-1.el5_7.3 set to be updated

~中略~
Installed:
php53.x86_64 0:5.3.3-1.el5_7.3 php53-mbstring.x86_64 0:5.3.3-1.el5_7.3
php53-mysql.x86_64 0:5.3.3-1.el5_7.3

Dependency Installed:
php53-cli.x86_64 0:5.3.3-1.el5_7.3 php53-common.x86_64 0:5.3.3-1.el5_7.3
php53-pdo.x86_64 0:5.3.3-1.el5_7.3

Complete!

バージョンアップされているかの確認

php -v

 
結果

PHP 5.3.3 (cli) (built: Nov 2 2011 23:35:50)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

無事バージョンアップされたようです。

Apache(ウェブサーバー)の再起動

/etc/rc.d/init.d/httpd start

 
さてさて、サーバーも再起動しウェブも見えた・・・

と喜んでいたら、phpMyAdminが下記のようなエラー

 


Not Found
The requested URL ・・・・・・・・・・・・・ was not found on this server.

(お名前VPSを使っていたのですが、PHPをバージョンアップするとデフォルトで使えていたphpMyAdminが使えなくなります。)
この際だからphpMyAdminも最新バージョンに切り替えます。
phpMyAdminの最新バージョン 3.4.8を使うには「mcryptの拡張」作業が必要になるそうです。

 
そう言えば、「# yum remove php php-*」のところで
 

Dependency Removed:
lgel-webadmin-phpmyadmin.noarch 0:2.11.9.3-1.r4.9
lgel-webadmin-phppgadmin.noarch 0:4.2.2-1.r4.9
phpMyAdmin.noarch 0:2.11.11.3-2.el5
phpPgAdmin.noarch 0:5.0.2-1.el5

なんていうメッセージが出ていた。

mcrypt 拡張をインストール

mcryptの拡張という作業が必要になります。

# yum -y install php53-devel libmcrypt-devel

 
Unsupported Historical Releasesからソースをダウンロード。展開後、make install。

# wget http://museum.php.net/php5/php-5.3.3.tar.gz
# tar xzvf php-5.3.3.tar.gz
# cd php-5.3.3/ext/mcrypt/
# phpize
# aclocal
# ./configure
# make
# sudo make install

※「./config」で
「configure: error: no acceptable C compiler found in $PATH
See `config.log’ for more details.」

というエラーが出たり、

「make」で
make: *** ターゲットが指定されておらず, makefile も見つかりません. 中止.

というエラーが出る時は、
 

# yum -y install gcc gcc-c++

を行いましょう。
 
php.ini関連の編集

# touch /etc/php.d/mcrypt.ini
# vi /etc/php.d/mcrypt.ini
extension=mcrypt.so

※php.iniの場所が変わっている場合は find / -name php.ini で探す。

 
再起動

# reboot




人気記事一覧


関連記事一覧

This entry was posted in Linux and tagged , , , , , . Bookmark the permalink.

PHP5.1→PHP5.3へバージョンアップする方法(CentOS) への2件のコメント

  1. oka より:

    インストールされているPHPのバージョンの確認がまちがえている

    • ウェブマスター より:

      ご指摘ありがとうございます。
      yumのインストール情報になっていました。
      修正致しました。