EC-CUBE4系をデバッグモードで実行する方法をご紹介します。
デバッグモードとは?
EC-CUBE4では通常エラーが発生しても「システムエラーが発生しました。大変お手数ですが、サイト管理者までご連絡ください。」と表示されるだけで原因が全く分かりません。
エラーの原因がユーザーに分かってしまうとセキュリティ上問題があるため、あえてエラー内容は表示しないようになっています。
しかしサイト開発時にはこれでは非常に効率が悪いので、エラーを画面に表示してサイト閲覧を行うのがデバッグモード(開発者モード)です。
EC-CUBE4をデバッグモードで実行するには?
デバッグモードを簡単に実行するにはEC-CUBEをインストールしたディレクトリに存在する.envファイルを修正します。APP_ENVとAPP_DEBUGという設定項目がありますので下記のように変更してください。
[変更前]
APP_ENV=prod
APP_DEBUG=0
[変更後]
APP_ENV=dev
APP_DEBUG=1
デバッグモードで実行することによりどのファイルの何行目にエラーがあるのか原因を特定しやすくなります。
デバッグに役立つSymfony Toolbar
実はEC-CUBEの場合、APP_DEBUGを1にするだけでもデバッグモードで実行されるようになります。エラーの原因を明らかにしたい場合はこれだけで十分なことが多いです。
ただしさらに便利なSymfonyToolbarを使用したい時はAPP_ENVをdevに変更します。SymfonyToolbarが画面下部に表示され、実行されたSQL、フォームの内容、表示速度など様々な情報が確認できるようになります。
EC-CUBE開発には必須のツールとなっています。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。