CentOSでPHPをバージョンアップする方法です。
PHP5.1系からPHP5.3系にバージョンアップしてみました。
WordPressを使っていると、
「WordPress 3.2」から「PHP5.2.4以上」の環境が必要になっており、PHP5.1 系だと最新のWordPressが動きません。
最新のWordPressを使ってみたいので、PHPのバージョンを上げることにしました。
インストールされているPHPのバージョンの確認
結果
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
インストールされているPHP関連パッケージの確認
結果
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関連パッケージの確認
結果
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を停止しましょう。
結果
PHP5.1の削除
処理途中でyesと回答する部分があります。
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のインストール
こちらも途中で一回yesと回答するところがあります。
結果
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!
バージョンアップされているかの確認
結果
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
無事バージョンアップされたようです。
Apache(ウェブサーバー)の再起動
さてさて、サーバーも再起動しウェブも見えた・・・
と喜んでいたら、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-*」のところで
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の拡張という作業が必要になります。
Unsupported Historical Releasesからソースをダウンロード。展開後、make install。
# 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 も見つかりません. 中止.
というエラーが出る時は、
を行いましょう。
php.ini関連の編集
# vi /etc/php.d/mcrypt.ini
extension=mcrypt.so
※php.iniの場所が変わっている場合は find / -name php.ini で探す。
再起動
人気記事一覧
- MySQL 最大の値・最新の日付データを1つ抽出する方法(MAX)
- [CakePHP] XformHelperの使い方
- Linux: スワップファイル(swp)の削除方法
- HTMLのForm methodとactionについて
- PHPでカンマ区切りデータを配列に入れる方法 (explode)
- [エラー対処] failed to open stream: No such file or directory
- [vsftp] FileZillaから接続できない場合の対処法
- [CSS]ブロック要素(div)の高さを、内部のfloat要素に合わせて自動調整する
- PHP5.1→PHP5.3へバージョンアップする方法(CentOS)
- PHPでテキストを1行ずつ読み込む方法(file_get_contents,explode)
関連記事一覧
- サーバーにインストールしてあるPHPパッケージの確認(yum)
- yumでyum-fastestmirrorをインストール(速いサーバーに自動で接続)
- CentOSにyumをインストールする方法(例:CentOS5.3)
- PEARパッケージインストール時に「No valid packages found install failed」が出るときの対処
- PHP MySQLのバージョン確認
- PEARのインストール
- PEARのServices_Amasonライブラリのインストール(Amason API)
- Apacheのバージョンを非表示にする(Linux)
- FTPサーバー vsftpdのインストール方法
- yum update (yumのアップデート)
インストールされているPHPのバージョンの確認がまちがえている
ご指摘ありがとうございます。
yumのインストール情報になっていました。
修正致しました。