名称: 环境变量处理器 描述: 安全管理环境变量。处理.env(模板)与.env.local(密钥)之间的区别。
环境变量处理器
核心规则
- 不使用
.env.example:不要创建此文件。使用.env作为模板。 - 密钥存放在
.env.local:实际的敏感值必须存放在.env.local中(此文件被 Git 忽略)。 - 占位符:
.env.local中的每个变量都必须在.env中有对应的条目。- 如果是敏感变量:
KEY="" - 如果是公共/通用变量:
KEY="默认值"
- 如果是敏感变量:
操作指南
1. 添加新的敏感变量
当需要添加一个密钥时(例如 REPLICATE_API_TOKEN):
-
更新
.env: 添加该变量,并将其值设为空字符串。# .env REPLICATE_API_TOKEN="" -
询问用户: 明确请求用户将实际值添加到他们本地的密钥文件中。
“我已将
REPLICATE_API_TOKEN添加到您的.env文件。请打开.env.local并添加实际的令牌:REPLICATE_API_TOKEN=您的令牌_在此”
2. 添加非敏感变量
当添加公共或配置变量时(例如 NEXT_PUBLIC_APP_URL):
- 更新
.env: 添加该变量及其默认值或开发环境值。# .env NEXT_PUBLIC_APP_URL="http://localhost:3000"
3. 读取变量
- 服务端:
process.env.KEY - 客户端:
process.env.NEXT_PUBLIC_KEY
检查清单
- [ ] 变量是否在
.env中? - [ ] 如果是敏感变量,其在
.env中的值是否为空? - [ ] 我是否已要求用户更新
.env.local?