Craft CMS をレンタルサーバーで運用する場合、ColorfulBox または mixhost を選択しています。
「LiteSpeed のレスポンスが早い」などの機能と料金のバランスが良く、「CDN を利用する程では...」という規模感であれば、なおのこと使い勝手の良いサーバーだと個人的に思っています。
これら2つのサービスでは、ドメインごとに利用する PHP バージョンを cPanel 上で指定できます。
その際、CLI の PHP バージョンと異なると ./craft update
などのコンソールコマンドがエラーになる場合があります。
そこで今回は CLI の PHP バージョンの調整方法について、備忘録を兼ねてまとめておきます。
これは Craft CMS Advent Calendar 2023 1日目の記事です。
CLI の PHP バージョンを確認
はじめに、SSH 接続後 PHP のバージョンを確認します。
php -v
この例では、PHP 7.4.33
でした。
cPanel で MultiPHP マネージャーにアクセスして確認できる「システムの PHP バージョン」、これが CLI のバージョンに相当するようです。
Craft 4 ではシステム要件が PHP 8.0.2+
のため、管理画面上でしかシステム本体やプラグインのアップデート、データベースのバックアップなどが実行できないことになります。
このままだと諸々支障がでるため、早速調整してみましょう。
実行中のシェルのみ、PHP バージョンを変更
利用したいバージョンの PHP のパスを追加します。
export PATH="/opt/cpanel/ea-php81/root/usr/bin:$PATH"; php -v
期待通り PHP 8.1
に切り替わったことを確認できましたので、目的の Craft 4 コンソールコマンドを実行しましょう。
なお、以前は .bash_profile
や .bashrc
を調整すれば対応できていたものの、いつの頃からか SSH 接続ごとにシステムデフォルトのバージョンへ戻るようになったため、実行中のシェルのみバージョンを変更するのが無難だろうと考えています。
利用可能な PHP バージョンを確認するには?
前述のコマンドでパスを指定するにあたり、利用可能なバージョンを事前に確認しておきましょう。
ls /opt/cpanel/
ea-phpNN
のうち、目的のバージョンを指定します。