我想为我的Next.js项目进行动态配置。我希望能够在构建和部署Next.js之后更改它。现在我使用的是.env和.env.production,它们是dotenv repo的一部分,但似乎Next.js或dotenv编译了内容,无法动态更改它们。我该怎么做呢?
.env
.env.production
dotenv
7gcisfzg1#
**您不能在构建和部署后更改.env。**但总有解决方法。
在服务器中放置一个与项目和主机分离的JSON文件。从该服务器读取JSON文件,并在配置中使用该变量。但是,如果将机密和凭据放入该JSON中,则存在安全问题。为此,您可以编写一个简单的节点项目,并使用API返回JSON配置。使用令牌密钥访问该API。将该令牌机密放入该节点项目中。因此,在节点或JSON项目中更改这些变量比重新构建并再次部署整个项目更经济。
或直接将这些配置放入数据库中。
1条答案
按热度按时间7gcisfzg1#
**您不能在构建和部署后更改.env。**但总有解决方法。
在服务器中放置一个与项目和主机分离的JSON文件。从该服务器读取JSON文件,并在配置中使用该变量。但是,如果将机密和凭据放入该JSON中,则存在安全问题。为此,您可以编写一个简单的节点项目,并使用API返回JSON配置。使用令牌密钥访问该API。将该令牌机密放入该节点项目中。因此,在节点或JSON项目中更改这些变量比重新构建并再次部署整个项目更经济。
或直接将这些配置放入数据库中。