🪬
Apache のアップデートにより、URL にクエリパラメータとしての ? または %3F が含まれる場合403 Forbidden エラー
PHPの開発環境でソースコードを変えてないのに403 Forbidden エラーが発生してました。
原因
Apache のアップデートが原因。
セキュリティ強化のため、Apacheが特定のエンコード文字をデフォルトで許可しなくなった、そのためURLにクエリパラメータとしての ? または %3F が含まれると 403 Forbidden エラーが発生するようになった。
解決策
解決策として、.htaccess ファイルで UnsafeAllow3F を使用することができるが、予期せぬ動作やセキュリティリスクがあるとのこと。
そのため、推奨されるのは、Apache を最新バージョン(2.4.60以上)にアップデートすることのようです。
参考
Discussion