nodejs設置NODE_ENV環境變量(1)


看下app.js文件中的一部分代碼,如下:

//開發環境錯誤處理
// will print stacktrace
if (app.get('env') === 'development') {
  app.use(function(err, req, res, next) {
    res.status(err.status || 500);
    res.render('error', {
      message: err.message,
      error: err
    });
  });
}

//生產環境錯誤處理
// no stacktraces leaked to user
app.use(function(err, req, res, next) {
  res.status(err.status || 500);
  res.render('error', {
    message: err.message,
    error: {}
  });
});

那么問題來了,app.get('env') 中的值怎樣設置成production呢?

使用1: 直接在之前加入

app.set('env', 'production');

使用2:運行時執行

set NODE_ENV=production #(windows系統使用,其他系統命令參見 nodejs設置NODE_ENV環境變量(2) )
node www  #先前的Express的啟動是從app.js,新的啟動從www調用了app.js

使用3:webstrom中運行設置Edit Cofigurations—>environment variables

使用4:forever啟動程序執行

# 開發環境下  
NODE_ENV=development forever start -l forever.log -e err.log -a app.js  
# 線上環境下  
NODE_ENV=production forever start -l ~/.forever/forever.log -e ~/.forever/err.log -w -a app.js

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM