本番でだけエラーが出ました。まず何をしますか。
まずローカルで本番ビルドを作って動かします。next dev は毎回コンパイルされ、静的生成も本番用の最適化も効いていないため、本番だけで出る問題はここで再現することが多いです。
面接官が見ているのは開発サーバーと本番ビルドが別物だと理解しているか。
よくある答えと、面談でどう見られるか
- ローカルで本番ビルドを作って動かし、再現するか確かめる
開発時は毎回コンパイルされ、最適化も静的生成も効いていません。ここで再現することが多いです。 - 本番でデバッグ表示を有効にして、画面に詳細を出す
設定内容やスタックトレースが外部に見えます。本番では避けます。 - ブラウザのコンソールを見る
クライアント側で起きたことしか出ません。サーバー側で落ちていれば何も出ません。 - 本番ビルドを再現しつつ、環境変数の差分も確認する
とくに NEXT_PUBLIC_ 系はビルド時に埋め込まれるので、ビルドした環境の値で固定されています。
模範解答
まずローカルで本番ビルドを作って動かします。next dev と next build は別物で、開発時は毎回コンパイルされ、静的生成も本番用の最適化も効いていません。本番でだけ出る問題は、たいていここで再現します。
再現しなければ環境の差を見ます。環境変数の設定漏れ、とくに NEXT_PUBLIC_ 系はビルド時に埋め込まれるので、ビルドした環境の値で固定されています。「本番サーバーには設定したのに反映されない」はこれが原因のことが多いです。
それでも分からなければサーバー側のログを見ます。ブラウザのコンソールに出るのはクライアント側で起きたことだけなので、サーバー側で落ちている場合は何も出ません。