Astro の設定ファイルで環境変数を読み込む
Published Jun 4, 2025
⋅
Updated Jun 4, 2025
Astro は、他のファイルが読み込まれる前に configuration files を評価する。つまり、.env
ファイルにセットされている環境変数にアクセスするときに import.meta.env
を使っても、astro.config.mjs
内ではアクセスできない。
この場合、CLI から環境変数をセットして process.env
を設定ファイル内で使うか、もしくは Vite's loadEnv()
ヘルパーを使って manually に .env
file を読み込む。
import { loadEnv } from "vite";
const { SECRET_PASSWORD } = loadEnv(process.env.NODE_ENV, process.cwd(), "");
この関数のシグネチャは次の通り。
function loadEnv(mode: string, envDir: string | false, prefixes?: string | string[]): Record<string, string>
mode
, envDir
prefixes
を受け取って、オブジェクトを返す。
参考