编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 名词解释 / 环境变量文件

环境变量文件

环境变量文件是一个纯文本文件,通常命名为 .env,以「键=值」的形式逐行存放配置项,例如 DATABASE_URL=postgres://user:pass@localhost/db。它的核心作用是把配置从代码里分离出来:程序运行时再把这些值加载成环境变量,同一份代码换个 .env 就能跑在不同机器上。名字里的 dotenv 来自最早实现这一约定的同名库。

需要注意,操作系统并不会自动读取 .env,必须由框架或专门的库(各语言都有 dotenv 实现)在启动时解析、并注入到进程的环境变量中。常见用途包括:

使用时有几个易踩的点:值全部是字符串,没有类型,true123 读出来都是文本;.env 不是 shell 脚本,不同解析器对引号、# 注释、${} 变量引用的支持并不一致;它是明文存储、并不加密,所谓「安全」只在于不把它提交到版本库——应写进 .gitignore,另附一份不含真实值的 .env.example 作为模板。

常见问题

.env 文件需要提交到 Git 吗?
不应该。它常含密钥、令牌等敏感信息,应加入 .gitignore。团队协作时改为提交一份不含真实值的 .env.example 作为字段模板。
为什么我建了 .env,程序却读不到里面的变量?
因为操作系统不会自动加载 .env,必须由框架或 dotenv 类库在启动时解析并注入。请确认已安装对应库、在入口处调用了加载逻辑,且文件名和路径正确。
.env 和 .properties、JSON 配置有什么区别?
.env 专门用来设置环境变量,格式是扁平的 KEY=VALUE,值只能是字符串;.properties、JSON 则是通用配置格式,能表达嵌套和层级。三者之间常需互相转换。

相关工具

相关名词