系统
环境变量(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。
又称
另见