现在,每当我想将 node.js 服务器部署到我的生产服务器时,我都需要更改所有 IP/DNS/用户名/密码,以便与我的数据库和外部 API 进行各种连接。
这个过程很烦人,有没有办法验证当前运行的 node.js 实例是在 cloud9ide 中还是在我的生产 joyent smartmachine 中?
如果我能够确定(在我的运行代码中)我的 node.js 实例在哪个服务器上运行,我将添加一个条件,将值设置为 prod 或 dev。
谢谢
原文由 guiomie 发布,翻译遵循 CC BY-SA 4.0 许可协议
通常你应该像这样在生产中运行一个节点应用程序:
NODE_ENV=production node app.js
使用 Express、Socket.IO 和其他应用程序
process.env.NODE_ENV
来确定环境。在开发中,您可以忽略它,只需使用
node app.js
正常运行应用程序。您可以像这样在代码中检测环境:
资源:
你如何检测 express.js 应用程序中的环境?