← inaro.devAI駆動開発 学習ツール

本番の環境変数

なぜ学ぶか: ローカルの.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が生成しており、誤りが含まれる場合があります。正確な情報は公式ドキュメント等でご確認ください。