问题描述
如何正确使用多个 .env 配置文件进行开发/阶段/生产。我意识到我需要一个 .env 文件,使用 dotenv(至少),但是当我开始托管我的应用程序 (React) 时,我使用 localhost: 5000 url,但我必须使用我使用的一些服务主机 url。>
解决方法
您的 .env 文件未提交。
因此,在您的生产构建中,您将配置 .env 文件以包含您的生产详细信息。同样,.env 文件是私有的。
您的开发 .env 文件将包含您用于本地主机的详细信息。
您也可以设置一个名为 PROD_BASEURL
的变量,然后在您的代码中使用 IF 语句。
if(PROD_BASEURL) {
do stuff
}
回答你的问题。不,您不会使用多个 .env 文件来分隔 PROD/UAT/DEV
,为什么要使用多个 .env 文件?
一般建议是拥有一个唯一的 .env
文件。
我应该有多个 .env 文件吗?
没有。我们强烈建议不要使用“主”.env 文件和 “环境” .env 文件,如 .env.test
链接:https://github.com/motdotla/dotenv#should-i-commit-my-env-file
使用 dotenv
之类的包来管理您的环境变量。还有其他包可以做同样的事情。
您在另一台生产服务器上定义生产环境变量。一般建议是每个主机有一个 .env 文件。
如果您仍然需要,您可以使用以下 dotenv
配置:
require('dotenv').config({ path: '/custom/path/to/.env' })
切记不要在 React 应用程序的 .env
文件中存储任何机密。