【Linux】PHPのバージョンを上げた時の手順

今までWordPressを動かしているサーバのPHPのバージョンは7.2でしたが、思い切って7.3にバージョンアップしてみました。

その時の手順を書いていきたいと思います。

他のバージョンの場合でも基本的な流れは変わらないと思います。

準備

インストール済PHP関連パッケージの調査

まずは現在インストールされているPHP関連のパッケージを調査してメモしておきます。

今回は以下のようにyumコマンドを使って検索しました。

# yum list installed |grep php

変更した設定ファイルと設定値の確認

PHP関連の変更した設定ファイルと設定値を調査して設定ファイルをバックアップするか設定値をメモしておきます。

個々の環境によって異なると思いますが、今回はPHP-FPMとphp.ini関連の以下のファイルが該当しました。

/etc/php-fpm-7.2.conf
/etc/php-fpm-7.2.d/以下
/etc/php-7.2.ini
/etc/php-7.2.conf/以下
/etc/php-7.2.d/以下

更新

現在のPHP関連パッケージの削除

準備で調査したPHP関連パッケージを削除していきます。

余計なものが削除されないと確認できているので、今回は以下のように一括で削除しました。

yum remove php*

PHP7.3パッケージのインストール

元のPHPのバージョンの時に入っていたパッケージに対応する7.3用のパッケージをインストールしていきます。

yum install php73-fpm
yum install php73-opcache
・
・
・

もちろん一行でyum installの後に全てのパッケージ名を指定して一気にインストールしても構いません。

設定

設定ファイルの設定値の反映

前のバージョンの時に設定ファイルで変更した設定値を、調査した時のメモを参考に必要に応じて反映していきます。

例
vi /etc/php-fpm-7.3.d/www.conf
user = hoge
group = fuga

前のバージョンの設定ファイルを現在の設定ファイルとしてそのまま使用するようなことは何が起こるか分からないのでおすすめしません。

PHP7.2から7.3のバージョンアップであれば設定ファイルのデフォルト値にあまり変更はありませんので、バックアップした設定ファイルと現在の設定ファイルをdiffコマンドで比較して確認できます。

サービスの自動起動をON

PHP-FPMをデーモンとして動かしている環境では新しいPHPバージョンのFPMサービスの自動起動をONにする必要があります。

サービスの再起動

設定値を変更した場合は関連するサービスの再起動を行って下さい。

まとめ

今回PHPのバージョンを7.2から7.3にバージョンアップしてみましたが、WordPressは特に問題なく動作しております。

ロードバランサーなどでWEB(APP)サーバを冗長化していない環境では一連の更新作業が終わるまでサービスは停止してしまいます。

複数台のサーバで冗長化してある環境では作業前に更新対象のサーバをロードバランサーから切り離した後に作業を行って下さい。

負荷の高い環境であれば、新しいバージョンのサーバを用意してロードバランサーに接続した後、古いバージョンのサーバを切り離した方がいいと思います。