javascript - 验证我的 node.js 实例是 dev 还是 production

标签 javascript node.js express cloud9-ide joyent

现在,每当我想将 node.js 服务器部署到我的生产服务器时,我都需要更改所有 IP/DNS/用户名/密码,以便与我的数据库和外部 API 进行各种连接。

这个过程很烦人,有没有办法验证当前运行的 node.js 实例是在 cloud9ide 还是我的生产joyent smartmachine?

如果我能够确定(在我的运行代码中)我的 node.js 实例正在哪个服务器上运行,我将添加一个条件,将值设置为 prod 或 dev。

谢谢

最佳答案

通常您应该像这样在生产环境中运行 Node 应用程序:

NODE_ENV=生产 Node app.js

Express、Socket.IO等应用使用process.env.NODE_ENV来判断环境。

在开发中,您可以省略它并使用 node app.js 正常运行应用程序。

您可以像这样在代码中检测环境:

var env = process.env.NODE_ENV || 'development';
loadConfigFile(env + '.json', doStuff);

资源:

How do you detect the environment in an express.js app?

关于javascript - 验证我的 node.js 实例是 dev 还是 production,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10694571/

相关文章:

javascript - 多个文本区域的字符计数器

javascript - 如何使用单个函数获取所有 javascript 变量?

templates - Jade模板继承 block 内容不起作用

node.js - 如何使用 Node.js 构建混合了静态和动态内容的页面?

reactjs - 是否安全地在客户端创建带有 token 的 cookie?

javascript - 如何使用 promise、.then()、.catch() 多次尝试异步函数

javascript - PHP 是单独存储 session 还是共享内存?

node.js - 来自 Webstorm 的 Grunt 调试

javascript - 将 zip 文件流转换为磁盘上的文件

node.js - NodeJS + CoffeeScript,根据要求渲染 CoffeeScript 编译的 js