📅  最后修改于: 2023-12-03 14:38:46.330000             🧑  作者: Mango
在开发一个应用程序时,经常需要使用敏感信息,例如 API 密钥、数据库凭证等,这些信息不能直接暴露在代码中或者版本控制系统中。.env 文件就是为了解决这个问题而创建的。
.env 文件是一个文本文件,通常包含一个或多个键值对。每行都会定义一个变量,键与值之间用等号(=)分隔。这些变量被称为环境变量,可以在程序中进行访问以获取敏感信息,而不必将其硬编码在代码中。
下面是一个示例,展示了一个名为 DATABASE_URL 的环境变量:
DATABASE_URL=mysql://user:password@localhost:3306/mydatabase
程序可以通过以下方式访问该变量:
const dbUrl = process.env.DATABASE_URL;
这样可以减少代码中的重复,避免硬编码敏感信息,同时也能防止非授权的访问。
.env 文件遵循简单的键值对格式。每行都应该是一个变量定义,形如 key=value。
注释可以通过在行首添加 # 符号来添加。这些注释在读取文件时会被忽略。
空白行也会被忽略。
以下是 .env 文件的格式:
# 这是注释
DEBUG=true
PORT=3000
DATABASE_URL=mysql://user:password@localhost:3306/mydatabase
虽然.env文件可以保护敏感信息,但是在部署应用程序时需要特别小心,以免将包含敏感信息的文件公开传输。
您应该在部署程序时确保 .env 文件不会被意外泄漏,例如在 Git 仓库中包括 .env 文件、在程序中直接暴露敏感信息、或通过不安全的协议传输 .env 文件。
经常情况下,应该将 .env 文件加入到 .gitignore 文件中,以确保它不会被提交到 Git 仓库。确保在其他部署方案中,可以通过安全的方式传输 .env 文件,例如使用加密的文件传输协议或者使用密码保护的压缩文件。
总之,通过使用 .env 文件,您可以安全地存储敏感信息,并且避免将其硬编码到代码中。