CentOS7での、デフォルトでインストールされるPHPのバージョンは、5.4なのですが…。
とうとう、WordPress5.2から、PHP5.4が対象外となってしまいました。
そこで、せっかくなので、PHP7.3でも入れてみたいな~と思ってインストールしてみたときの、作業メモです。
(他のバージョンは、「73」となっているところを「74」などと書き換えれば大丈夫だと思います。)
(1)EPELレポジトリの追加
PHP7のパッケージ情報が入っている「レポジトリ」を、追加します。
yum install epel-release
(2)REMIレポジトリの追加
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
(3)念のため、php.iniをバックアップ
cp /etc/php.ini /etc/php_old.ini
(4)現在のPHPを削除
yum remove php-*
新バージョンのモジュールをインストールするために、この時に表示されるモジュール類をメモしておきます。
(5)新バージョンのPHPをインストールします
yum install --disablerepo=* --enablerepo=remi-php73 php php-mbstring php-pdo php-gd php-mysqlnd など
削除したのと同じモジュールをインストールします。
(6)ここで、インストールが成功すれば、
(13)で、php.iniを編集します。
(7)もし、ここで、インストールを失敗した場合…。
例えば、php-mbstringでエラーが出た場合
エラー: パッケージ: php-mbstring-7.3.6-3.el7.remi.x86_64 (remi-php73)
要求: libonig.so.5()(64bit)
問題を回避するために --skip-broken を用いることができます。
これらを試行できます: rpm -Va --nofiles --nodigest
(8)モジュール本体を、検索します。
yum list | grep php | more
listを、「php」でフィルタかけて、さらにモジュール名を検索ができるようにします。
/php73-php-mbstring ←検索コマンド
…飛ばしています
php73-php-mbstring.x86_64 7.3.6-1.el7.remi remi
(9)(8)で見つかったモジュールを、一度仮インストールします。
yum -y install php73-php-mbstring
ここで、正常にインストールされました。
ただ、これでは動かないみたいです…。
(10)(9)でインストールした「php73-php-」と名前の付いているモジュールを、全て削除します。
yum remove php73-*
(11)もう一度、モジュールを、(5)と同じコマンドを使ってインストールします。
yum install --disablerepo=* --enablerepo=remi-php73 php php-mbstring php-pdo php-gd php-mysqlnd など
(12)今度は、エラーが発生せず正常にインストールが成功しました。
(13)php.iniを、設定し直します。
vi /etc/php.ini
(14)Webサーバを再起動します。
systemctl restart httpd
念のため、phpinfo()で、きちんとモジュールが認識されているか確認をしてください。
Comment