【PHP】さくらインターネットで特定のディレクトリのみPHPバージョンを変更する方法

こんばんは。GUMIです。
今回はさくらインターネットで特定のディレクトリのみPHPバージョンを変更する方法についての備忘録です。

別のサイトから移行する際だったり、使いたいWordPressテーマで使われているPHPのバージョンが現在運営しているサイトと違ったりした時、
PHPのバージョンを上げてしまうと、既存のサイトのレイアウトが壊れたり
大変なことになったりした事があるかもしれません。
そういった時は、特定のディレクトリのみのPHPバージョンを変更するのがオススメです。


1.php.cgiファイルを作成しよう

php.cgiというフォルダを作成します。
中身には下記のような記述を行いました。

#!/bin/sh
exec /usr/local/php/7.4/bin/php-cgi
#exec /usr/local/php/5.5/bin/php-cgi
#exec /usr/local/php/5.6/bin/php-cgi
#exec /usr/local/php/5.4/bin/php-cgi

今回はPHPのバージョンを特定ディレクトリのみ7.4にしたかったので
exec /usr/local/php/7.4/bin/php-cgi
の先頭#を外して設定しました。
ここで記述出来るのは、サーバーで利用できるバージョンのみです。
対象外のバージョンは使用できないので気を付けてください。
さくらインターネットPHP提供ポリシー

ちなみにPHPのバージョンがどれを使っているかわからない…という人は
さくらのレンタルサーバのサーバーコントロールパネル>スクリプト設定>言語バージョン設定から確認が出来ます。

古いPHPのバージョンは提供が終了されるとサーバサイドで強制的にバージョンアップされることがあります。
そのため、なるべく古いPHPバージョンは使わない事に越したことはないですが、かといって最新バージョンにも不具合などがあるかもしれないので、
行う際は必ずバックアップを忘れずに行いましょう。(ステージング機能が便利だよ)

2.PHP.cgiフォルダを特定ディレクトリにアップロードしよう

wp-adminなどが置いてあるフォルダ直下に置いておきましょう。
アップロードしたらPHP.cgiを右クリック>プロパティを押すとパーミッション設定が出てきます。
これを下記の設定に変更します。

3.パーミッションを705または755で設定

文字コードは”UTF-8″か”EUC-JP”
改行コードは”LF”で保存しておきましょう。形式が異なるとエラーが出ることがあります。

4. .htaccessファイルに下記を記入

Action myphp-script /特定ディレクトリ/php.cgi
AddHandler myphp-script .php .html

5.完了!

これで特定ディレクトリのみPHPバージョン変更が出来ました。
一括でPHPバージョンは変更出来るので、本来であればそちらを使うのが楽ですが
複数サイトを運営しているとどうしてもこういった状況になりがちなので
自分用の備忘録でした。それでは今回はこのへんで。

The following two tabs change content below.

GUMI

絵を描くことが好きでApple製品が大好きなただのヲタクです。 気になることを気になるまま色々記事にしていこうと思ってます。 最近はゲーム・漫画と海外ドラマにハマっている。 気になったことやいいなと思ったらシェアして貰えると嬉しいです♫