系統
環境變數(environment variable)
/ EN-vy-ruhn-munt VAIR-ee-uh-bul /
環境變數(environment variable)是一個有名字的值,它住在你的程式碼之外、住在程式執行的「環境」裡——程式啟動時會去讀它。你可以把它想成貼給程式的一張便利貼:PORT=3000、DATABASE_URL=…、API_KEY=…。程式碼只說「PORT 設成什麼,我就在那個埠監聽」,從不把數字寫死在裡面。
這正是同一份程式碼在不同地方表現不同的奧妙。在你筆電上,DATABASE_URL 指向一個小小的測試資料庫;上了生產環境,它指向真正的那個——而程式碼一行都不用改。你只需要在每個環境裡把變數設成不同的值。
它也是放祕密的地方。API 金鑰、密碼就該放進環境變數,正是為了讓它們待在原始碼之外——如果把祕密寫死進一個你提交了的檔案,它就會永遠留在 git 歷史裡,誰拿到儲存庫都能看見。放在環境裡,它們就永遠碰不到程式碼庫。
$ export API_KEY=sk-secret-123 $ node app.js # in code: const key = process.env.API_KEY;
在終端機裡設定,在程式碼裡讀取——祕密從不待在你會提交的檔案裡。
別把 .env 檔案提交上去——那就前功盡棄了。記得把它加進 .gitignore。
又稱
另見