CentOSでPHPをバージョンアップする方法
※本ページはプロモーションが含まれています
「CentOSでMySQLをバージョンアップさせる方法」に続き、PHPも最新バージョンへアップデートさせる方法をメモ。
※「Nginxでお手軽にメンテナンス画面を表示する方法」でメンテナンス画面を表示させる環境を作ってから実行する。
PHPをバージョンアップする
僕はremi リポジトリを使用した。未だ導入していなかったので、remi リポジトリを追加。既に追加してある場合は飛ばしてOK。
$ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
アップデートの確認をする。
$ yum --enablerepo=remi check-update
新しいアップデートがあった場合更新する
$ sudo yum --enablerepo=remi update
「Nginxでお手軽にメンテナンス画面を表示する方法」で設定した方法でサーバーをメンテナンス画面にする。
$ sudo touch /var/tmp/do_maintenance
APCはPHP5.5 では利用できないので、更新前にアンインストール。
$ sudo yum remove php-pecl-apc
PHP を5.5 に更新
$ sudo yum update php --enablerepo=remi-php55,remi
APCの代りにZend OPcache をインストールしてオペコードキャッシュを有効にする。
$ sudo yum install php-opcache --enablerepo=remi-php55,remi
これでOKなはずだが、一部表示されないページがある。表示されるページはプロキシキャッシュが残っているからだと考えキャッシュを削除
$ sudo rm -fr /var/cache/nginx/cache/*
案の定全てのページが「502 Bad Gateway」
「502 Bad Gateway」はサーバー間のエラー。調べた結果「Nginx+PHP-FPMでUNIXドメインソケットを使っていてハマる | 設定やツールねた」の方法で解決。
$ sudo vi /etc/php-fpm.d/www.conf
を開き、「listen = /var/run/php-fpm/php-fpm.sock;」の下に「listen.mode = 0666」を一行追加。
listen = /var/run/php-fpm/php-fpm.sock; listen.mode = 0666
php-fpmを再起動。
$ sudo service php-fpm restart
これでチャント表示されるようになった!
ブログがちゃんと表示されているか確認をしてからメンテナンス画面を終了させる。
$ sudo rm /var/tmp/do_maintenance
以上で完了。