XSERVERでSSH接続をした時のPHPのバージョン変更

XSERVERでSSH接続をした時のPHPのバージョン変更

97 回閲覧されました

みなさんこんにちは、jonioです。

XSERVERでSSH接続をしたときにPHPのバージョン変更で苦労したのでメモとしてこの記事を残します。

注意点

この記事を書いているのは2024年9月ですが記事のやり方通りにやってうまくいかなくても保証ができませんのでご了承下さい。

サーバーパネルでの変更だけではうまくいかない

サーバーパネルにPHPバージョン切替がありますがそれでPHPのバージョンを切り替えただけではSSH接続した時に変更が適用されません。

サーバーパネルとPHPのバージョンを同じにする

SSH接続をしてから下記のコマンドを叩きます。

find /opt/php-*/bin -type f -name 'php'

すると変更可能なPHPのバージョンがズラーっと表示されます。

/opt/php-8.1.3/bin/php
/opt/php-8.1.6/bin/php
/opt/php-8.1/bin/php
/opt/php-8.2.22/bin/php
/opt/php-8.2.5/bin/php
/opt/php-8.2.9/bin/php
/opt/php-8.2/bin/php
/opt/php-8.3.10/bin/php
/opt/php-8.3.7/bin/php
/opt/php-8.3/bin/php

今回だと「/opt/php-8.2.22/bin/php」です。

これを忘れないようにメモします。

ディレクトリの作成

SSH接続をした直後のディレクトリに移動します。

下記のはずです。

[bakk@svxxxx ~]$

下記のコマンドを叩きます。

mkdir ~/bin

「mkdir: ディレクトリ `/home/bakk/bin’ を作成できません: ファイルが存在します」と表示されたらディレクトリの作成はしなくていいです。

下記のコマンドを叩きます。

cd ~/bin

そして下記のコマンドを叩きます。

ln -i -s /opt/php-8.2.22/bin/php ~/bin

「/opt/php-8.2.22/bin/php」はさっきメモしたバージョンです。

「ln: `/home/bakk/bin/php’ を置き換えますか(yes/no)?」と表示されたら以前SSH接続をした時にPHPのバージョンを変更しているので「yes」を選択します。

PHPバージョンの適用

ホームディレクトリに戻る為に下記のコマンドを叩きます。

cd

そしてファイルを編集する為に下記のコマンドを叩きます。

vi .bash_profile

そしてまずキーボードの「i」を押します。

すると表示内容の編集ができるようになるので下記の記述をします。




# PATH=$PATH:$HOME/bin // ←元々の記述をコメントアウトする
PATH=$HOME/bin:$PATH // この行に変更

export PATH

そして「esc」を押して「:wq」を押すと編集を終了します。

そしてファイルの変更を適用する為に下記のコマンドを叩きます。

source .bash_profile

これでSSH接続をした時のPHPのバージョンが切り替わるはずです。

php -v

//結果
PHP 8.2.22