
さくらサーバーでは、通常コントロールパネルからPHPバージョンを切り替えると、全ドメインに一括適用されてしまいます。特定のドメインのみで異なるPHPバージョンを利用したい場合、個別に設定を行う必要があります。本記事では、ドメインごとにPHPバージョンを切り替える方法について、具体的な手順とコード例を詳しく解説します。
手順1: PHPバージョン確認用info.phpの作成
まず、対象ドメインの直下に info.php を作成し、現在のPHPバージョンを確認します。以下のコードを使用してください。
<?php phpinfo(); ?>例:

注意: PHPバージョンの確認が終わったら、セキュリティ上の理由から必ず info.php は削除してください。
手順2: php.cgiの作成とパーミッションの変更
次に、ドメインごとに利用したいPHPバージョンに対応する php.cgi ファイルを作成します。例えば、PHP 8.3を使用する場合、以下の内容を記述します。
#!/bin/sh
exec /usr/local/php/8.3/bin/php-cgi- このファイルを対象ドメインの直下に保存します。
- ファイルのパーミッションを 705 に変更してください。
手順3: .htaccessファイルへの設定追加
最後に、同じドメインの直下にある .htaccess ファイルに以下の記述を追加します。
Action myphp-script /php.cgi
AddHandler myphp-script .php .html- Actionディレクティブ: PHPファイルの実行を、作成した php.cgi 経由に変更します。
- AddHandlerディレクティブ: 拡張子
.phpと.htmlに対して、myphp-scriptハンドラを適用します。
動作確認
ドメイン直下の info.php にアクセスして、PHPバージョンが切り替わっているか確認します。
例:

まとめ
この方法により、全ドメインに一括適用されることなく、特定のドメインで希望するPHPバージョンを利用できます。設定後は必ず動作確認を行い、info.phpは削除するようにしてください。これにより、セキュリティも確保できます。