存储仅服务器所需的全局变量的最佳位置在哪里,并且可以避免重新启动服务器?
截至目前,我正在将敏感密钥存储在服务器上。我了解在服务器目录中进行的任何代码更改都会导致应用程序重新启动。
由于我可能出于安全目的而在将来重新生成api密钥,有没有办法可以通过将全局变量存储在私有'中来避免这种情况。 ?目录
如果是这样,我该怎么做?
例如(我的代码截至目前)
服务器> server.js
var privateKey = 'sensitive-values'
//how to prevent server restart if I change the 'sensitive-values'?
答案 0 :(得分:1)
如果您编辑项目中的任何文件,包括在私人目录中,则服务器将重新启动。
然而,在生产模式中,情况并非如此。但是,编辑生产应用程序会很麻烦。
将sensitive-values
存储在环境变量中可能会更好。
var privateKey = process.env.SENSITIVEVALUE
然后使用SENSITIVEVALUE='sensitive-values' meteor
而不是meteor
或使用export为您的终端会话存储环境变量来启动流星应用。
这样,变量不会存储在文件中,因此不会对重新启动敏感。