环境变量速查表 - .env 配置与 dotenv 用法大全
几乎每个 Node/Python/前端项目都要写 .env,但最容易栽的坑是等号两侧留空格、值里的 # 被当注释、密钥误提交进仓库。这份速查覆盖 5 组:变量定义、在 Shell/Node/Python 里如何读取、dotenv 的加载写法、多环境文件(.env/.env.local/.env.production)的组织,以及一组安全陷阱提醒。写完对照检查格式,部署前确认密钥没有被提交。读完后你能规范组织环境变量,并规避最常见的数据泄漏问题。
变量定义 Definition 6
KEY=value定义变量(等号两侧不要有空格)
KEY="value with space"含空格或特殊字符需加引号
KEY='literal $NOT_EXPANDED'单引号内不做变量展开
KEY=${OTHER}_suffix双引号内可引用其他变量
# comment井号开头为注释行
export KEY=value设置并导出为环境变量
引用与读取 Reading 5
echo $KEYShell 中读取变量(Linux/macOS)
echo %KEY%Windows cmd 读取变量
$env:KEYPowerShell 读取变量
process.env.KEYNode.js 读取
os.getenv("KEY")Python 读取
dotenv 用法 4
require('dotenv').config()Node 加载 .env 到 process.env
import 'dotenv/config'ESM 写法加载 .env
dotenv.config({ path: '.env.local' })指定自定义文件路径
python-dotenv load_dotenv()Python 加载 .env
多环境文件 Multi-env 5
.env默认环境(勿提交到 git)
.env.local本地覆盖(优先级更高)
.env.development开发环境
.env.production生产环境
.env.example示例模板,可提交,不含真实密钥
安全陷阱 Security FAQ 4
不要提交密钥把 .env 加入 .gitignore,用 .env.example 提供模板
区分大小写KEY 与 key 是不同变量
类型转换所有值都是字符串,数字需自行 parseInt/Number()
换行需转义多行值用引号包裹或使用
提示
- 等号两侧不要留空格(KEY=value 正确,KEY = value 错误)。
- 把 .env 加入 .gitignore,密钥改用 .env.example 模板提交。
- 所有值都是字符串,数字需用 Number()/parseInt() 转换。
- 多行值用引号包裹或 \n 表示换行。
由 巧匠 维护
公开更新于 2026年8月2日,内容持续校对官方文档。