エックスサーバのCLI版PHPを最新バージョンに切り替える方法
はじめに
エックスサーバでは、ウェブサイトのPHPバージョンは管理画面から簡単に変更できますが、SSHでPHPを実行すると 古いバージョンのPHPが使われる ことがあります。
例えば、SSHで php -v
を実行すると、以下のように PHP 5.4 などの古いバージョンが表示されることがあります。
$ php -v
PHP 5.4.16 (cli) (built: Nov 1 2019 16:04:20)
このままでは、最新のWordPress管理ツール WP-CLI などのツールが正しく動作しません。
WP-CLIは PHP 7.4以上 を推奨しており、古いPHP環境ではエラーが発生します。
また、PHP 5.4はすでに サポート終了 しており、セキュリティリスクも高いため、PHP 8.3 に切り替えることをおすすめします。(※一部サーバでは8.4を利用できるようなので下記の手順で確認してください)
1. 現在のPHPバージョンを確認
まず、現在のCLI版PHPのバージョンを確認します。
$ php -v
もし古いバージョン(例:5.4や7.1など)が表示されたら、次の手順で最新のバージョンへ変更します。
2. 利用可能なPHPバージョンを確認
エックスサーバには複数のPHPバージョンがインストールされているため、まず利用可能なバージョンを確認します。
$ ls /usr/bin/php*
出力例:
/usr/bin/php /usr/bin/php7.4 /usr/bin/php8.0 /usr/bin/php8.3
/usr/bin/php5.4 /usr/bin/php7.4-cgi /usr/bin/php8.0-cgi /usr/bin/php8.3-cgi
この中で、 最新のPHP 8.3 を選びます。
3. デフォルトのPHPバージョンをPHP 8.3に変更
デフォルトで php
コマンドを実行したときに PHP 8.3 が使われるように、~/.bashrc
にエイリアスを設定します。
$ echo "alias php='/usr/bin/php8.3'" >> ~/.bashrc
$ source ~/.bashrc
ポイント
-
echo
コマンドで.bashrc
に設定を追加 -
source ~/.bashrc
を実行して、すぐに設定を反映
4. 設定変更を確認
正しく変更されたかを php -v
で確認します。
$ php -v
出力例:
PHP 8.3.1 (cli) (built: Jan 10 2024 15:32:10) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.0, Copyright (c) Zend Technologies
無事に PHP 8.3 に変更されました!
5. 注意点
-
SSH再ログインが必要な場合
.bashrc
の変更がすぐに反映されない場合は、一度 ログアウトして再ログイン してください。 -
PHPのバージョンを変更したい場合
他のバージョン(例:8.2)を使いたい場合は、alias php='/usr/bin/php8.2'
に変更してください。 -
CGI版との違いに注意
php8.3-cgi
ではなく、通常のphp8.3
を指定してください。
まとめ
エックスサーバのCLI版PHPを最新バージョンに切り替える手順は以下の通りです。
-
php -v
で現在のバージョンを確認 -
ls /usr/bin/php*
で利用可能なPHPバージョンを調査 -
.bashrc
にalias php='/usr/bin/php8.3'
を追加 -
source ~/.bashrc
を実行して設定を反映 -
php -v
で変更を確認
この方法で、エックスサーバのCLI版PHPを最新の PHP 8.3 に変更できます。ぜひ試してみてください!
※追記
コメントで指摘いただきました。PHP 8.4に変更できるサーバもあるようです!