您好,登錄后才能下訂單哦!
這篇文章主要介紹Node在不同環境下配置文件怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1. config-lite模塊
首先引入一個配置模塊config-lite,使用命令npm i config-lite --save安裝。
通常我們會針對不同的環境,將配置寫入不同的配置文件中,在Node項目下新建config目錄,里面新建不同環境的配置文件,這里我以『開發』以及『生產』兩個環境作為例子來講解如何操作。
開發環境中,我們在config目錄下新建兩個文件:test.js和default.js,你可能會問,為啥沒有生產機配置文件,因為生產機配置要在生產環境下再創建嘛。
在test.js配置文件中寫入代碼如下(PS. 這里以mysql的配置為例):
// test.js module.exports = { mysql : { host: "localhost", user: "lupeng", password: "080910", database: "b1imd" } };
default.js里寫入一些默認的配置文件,例如session的配置等。
// default.js module.exports = { mysql : { host: "10.20.141.220", user: "lupeng", password: "123456", database: "b1imd" }, session: { secret: 'keyboard cat', resave: false, saveUninitialized: true, cookie: { maxAge: 1000*60*60 } } };
好了,配置文件寫好了,如何使用呢?這里我們使用的 config-lite模塊,這個模塊是依據環境變量來選擇不同的配置文件的,所以在使用之前我們需要修改package.json里的啟動命令:
"scripts": { "start": "NODE_ENV=production supervisor --harmony -i views/ ./bin/www", "test": "NODE_ENV=test supervisor --harmony -i views/ ./bin/www" },
可以看到,上面有兩條啟動命令,一條是針對生產機,設置了NODE_ENV=production
,一條是針對測試機,設置了NODE_ENV=test
,當我們使用npm test啟動項目的時候,config-lite會去抓取test.js配置,并且會與default.js里配置去合并,如果有相同的對象,會覆蓋default.js里的配置。如上例子都有mysql的對象,那么這里會以test.js里的對象為準。
好了,下面來介紹一下如何在項目中使用config-lite模塊,在app.js里代碼如下:
// 省略... var config = require('config-lite')(__dirname); // 省略... app.use(session(config.session)); console.log("mysql服務器:" + config.mysql.host); // display mysql-config // 省略...
引入之后,可以直接使用配置文件中的配置對象。
2. 生產環境
那么在生產環境中,如何使用呢?上面已經介紹了config-lite基本原理以及用法,在生產環境的時候,我們只需要在生產機環境中config目錄下新建production.js文件,然后使用啟動命令npm start即可。
為了避免測試環境以及生產壞境配置文件混淆,可以通過.gitignore文件忽略配置文件,添加如下:
# config config/* !config/default.*
這樣,git會忽略除了default.js之外的配置文件,在本地開發環境中,可以創建多個配置文件測試使用,只需設置對應的環境變量即可。需要注意的是環境變量名需同配置文件名一樣。
3. windows環境
也許你是一個多系統環境開發者,可能同時在Linux和windows環境下開發,由于windows下設置環境的變量的語法不太一樣,所以可以在package.json啟動命令中再加上兩句,如下:
"scripts": { "start": "NODE_ENV=production supervisor --harmony -i views/ ./bin/www", "test": "NODE_ENV=test supervisor --harmony -i views/ ./bin/www", "winStart": "SET NODE_ENV=production&&supervisor --harmony -i views/ ./bin/www", "winTest": "SET NODE_ENV=test&&supervisor --harmony -i views/ ./bin/www" }
這樣,如果部署在windows環境下,在config目錄下新建production.js配置文件,啟動命令npm winStart;
如果部署在Linux或類Unix環境下,同樣是創建production.js,啟動命令npm start即可。
以上是“Node在不同環境下配置文件怎么用”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。