格安で利用させてもらっている、さくらインターネットですが、
PHPのバージョン対応に苦労しましたのでその備忘録です。
今回は、マルチドメインで、アクセス方法によって、PHPが動作しませんでした。
具体的には、
php76.cgi .htaccess .user.ini
これに、必要事項を記載すれば、それぞれの環境にあった
PHPのバージョンを選択することができます。
① https://xxxabcxxx.sakura.ne.jp/testphp/ への.htaccessの記載例です。
( ※ xxxabcxxは契約ドメイン名 )
【.htacess】
Action myphp-script /testphp/php74.cgi
AddHandler myphp-script .php .html
これで、<? php phpinfo() ?> をindex2.phpに記載して、https://xxxabcxxx.sakura.ne.jp/testphp/index2.php
にアクセスすると、動作します。
次に、一歩発展して
②https://testphp.xxxabcxxx.jp/
testphpディレクトリーを契約した、ドメインへ登録した場合ですが、
【.htacess】
Action myphp-script /php74.cgi
AddHandler myphp-script .php .html
①のtestphpが不要になります。
これで、動作します。
-------------------------------------------------------
【.htacess】
Action myphp-script /testphp/php74.cgi
AddHandler myphp-script .php .html
【.user.ini】
display_errors = On
error_reporting = 6135
【php74.cgi】 パーミッションは705
#!/bin/sh
exec /usr/local/php/7.4/bin/php-cgi
#exec /usr/local/php/5.4/bin/php-cgi
#exec /usr/local/php/5.3/bin/php-cgi
#exec /usr/local/php/5.2/bin/php-cgi
#exec /usr/local/php/4.4/bin/php-cgi
--------------------------------------------
※赤文字に注意です。