本番の環境変数
なぜ学ぶか: ローカルの.env.localはGitに入れない— では本番サーバーはどうやってキーを知るのか? 答えは「ホスティング側の管理画面に登録する」。ここを理解していないと、「ローカルでは動くのに本番でだけ壊れる」の代表原因を踏みます。
.env.localはデプロイされない
Gitに入れない=Vercelにも届きません。本番用の値はVercelの設定画面に手で登録します。
本番でだけ壊れる、の第一容疑者
ローカルOK・本番NGの症状が出たら、まず環境変数の設定漏れと名前のタイプミスを疑います。
変更したら再デプロイ
環境変数はビルド時に読まれることが多く、変えただけでは反映されません。「設定を変えたら再デプロイ」とセットで覚えます。
開発用と本番用でキーを分ける
コードは同じまま、環境だけが差し替わるのが環境変数の本領。開発はテスト用のキー、本番は本物 — 分けておけば実験の事故が本番に波及しません。
NEXT_PUBLICの区別は本番でも同じ
Next.jsのフェーズで学んだルールはそのまま。シークレットにNEXT_PUBLIC_を付けない、は本番設定でも変わらぬ鉄則です。
設定の住み分け
環境変数の住み分け ローカル開発: .env.local ← Git に入れない API_SECRET=sk-dev-xxx ← 開発用のキー 本番(Vercel): Settings → Environment Variables で登録 API_SECRET=sk-prod-yyy ← 本番用のキー(開発用とは別の値に) 注意: - 追加・変更したら再デプロイして反映 - 「本番でだけ壊れる」→ まず設定漏れ・タイプミスを疑う
「ローカルと本番で違う値を持てる」のが環境変数の本領。開発中はテスト用キー、本番は本物 — コードは同じまま、環境だけが差し替わります。
ステップ 1 / 2
※ カリキュラムの内容はAIが生成しており、誤りが含まれる場合があります。正確な情報は公式ドキュメント等でご確認ください。