Node.js,開發與生產環境的差異

了解如何為生產和開發環境設置不同的配置。 你可以為生產與開發環境設置不同的配置。 Node.js 假設它一直在開發環境中運行。但你可以通過設置 NODE_ENV=production 的環境變量,告訴 Node.js 你正在生產環境中運行。 通常,在 shell 中執行以下命令即可完成此操作: export NODE_ENV=production 但最好將其放在您的 shell 配置文件中(例如使用 Bash shell 的 .bash_profile),以便在系統重新啟動時此設置仍然有效。 你還可以在應用程序初始化命令之前加上環境變量: NODE_ENV=production node app.js 這個環境變量是一個經常在外部庫中使用的約定。 將環境設置為 production 通常可以確保: 日誌保持在最低限度的關鍵級別 融入更多的緩存層以優化性能 例如,Express 使用的模板庫 Pug 如果 NODE_ENV 沒有設置為 production,則會在調試模式下編譯。在開發模式下,每次請求都會編譯 Express 視圖,而在生產模式下則會被緩存。這只是其中一個例子,還有很多其他例子。 Express 提供了特定於環境的配置鉤子,根據 NODE_ENV 變量的值自動調用: app.configure('development', () => { //... }) app.configure('production', () => { //... }) app.configure('production', 'staging', () => { //... }) 例如,你可以使用這個來為不同模式設置不同的錯誤處理程序: app.configure('development', () => { app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); }) app....