【メモ】PHP8.1.x更新で痛い目にあった

 

XServer を使っていて、PHPのバージョンを8.1.xにアップした
基本的な動作には問題が無かったので、放置を決め込んでいた

アクセスをカウントして画像にして返すPHPがエラーになっていた
見ていなかったから気が付かなかった

PHPのバージョンを落とせば表示はされるので、バージョンアップに伴う変更でエラーになっているのだと判断した

デバッグを行った

最初は、掲載しているサイトで仕様変更があったのかと思って、最低限の機能で構築をおこなったら、画像が問題なく IMGタグで表示された

エラーログにも新しい感じでは表示されていない
ワーニングエラーが掲載されていたので、それは後で対応を行う
PHP.INI のワーニングなので該当部分をコメントにすれば終了

問題は、プログラムが動作しない
最小コードでは動作したので、問題はどこかのコードだと考えたが、1時間いろいろ試しても解らない
500エラーが出てしまう

require_once (__DIR__.'/config.php');

の部分がエラーなっていた。

print_r(__DIR__);

でもエラーになってしまう。
同じ事象が発生しているのか調べても出てこない。

XServer 固有の問題か?

結局

require_once (dirname(__FILE__).'/config.php');

この修正でコードが実行された。

ワーニングはいろいろ出ていて、宣言されていない変数を使う時にエラーが出ていた。
isset() で調べてから使うように変更した。null チェックも兼ねている。

ひとまず、応急処置を行って運用モードに戻したが、ログをチェックしていると他にもいろいろエラーを吐き出しているので、それらを調整することにした。

WordPressのプラグインでもエラーを吐き出しているので、同じような機能を持つプラグインに変更することにした

F1&雑談
小説
開発
静岡

小説やプログラムの宣伝
積読本や購入予定の書籍の情報を投稿しています
小説/開発/F1&雑談アカウントは、フォロバを返す可能性が高いアカウントです
雑談