レンタルサーバーをMixHostに乗り換えました。
旧サーバーからファイルをMixHostにコピーして<?php echo phpinfo(); ?>を表示しようとしたら403エラー…。
.httaccessのPHPのバージョンが相違していたのが原因
旧サーバーではPHPのバージョンを.htaccessでPHP5.6に設定していました。以下がその.htaccessの記述です。
AddHandler application/x-httpd-php56cgi .php
以下のようにバージョン設定が異なっているのが原因でした。
- MixHostの管理画面「cPanel」の「MultiPHPマネージャー」で設定しているバージョンはデフォルトの7.0
- .htaccessではバージョンでは5.6を指定
削除またはコメントアウトで解決
「MultiPHPマネージャー」でバージョンを7.0→7.2に変更して、上記の.htaccessにある1行を削除、または行の先頭に#を入れてコメントアウトしたら正常にphpinfo()が表示されました。
.htaccessとMultiPHPマネージャーの両方でPHPのバージョンを指定して、5.0系または7.0系でそれぞれバージョンが0.1とか0.2とかの違いだとエラーは出ませんでしたが、.htaccessでバージョン指定する理由も特にないと思いますので、削除かコメントアウトしておくほうが無難です。