2015-02-24 75 views
1

我在Github上有一個Node項目,我在Heroku上部署,並使用MongoDB來滿足數據庫需求。 我有一個來自Mongo的URL,我使用用戶名和密碼連接到該URL。當我在本地系統上運行它時,它完全正常工作,因爲我可以對我的用戶名和密碼進行硬編碼(甚至可以使用process.env.USER_NAME)。在Heroku上部署帶私人信息的應用程序

我的問題是,我如何在Heroku中傳遞這些值。它與我的github同步,我不想公開我的用戶名和密碼。

回答

1

你想使用環境變量。

這可以從每個Heroku的應用

1中完成:轉到您的應用程序的設置:https://dashboard.heroku.com/apps/:yourApp/settings enter image description here

2:點擊Reveal Config Variables,你會看到一個區域添加或編輯你的環境變量 enter image description here

3:在您的應用程序中,您將通過訪問您的過程訪問這些變量。

var dbURL = process.env.databaseUrl, 
    dbUsername = process.env.dbUsername, 
    dbPassword = process.env.dbPassword; 

4:爲了開發目的,您仍然需要將這些變量保留在env變量中。安裝dotenv npm模塊。

npm install dotenv 

// appRoot/.env 

    dbURL=localhost:27017 
    dbUsername=tacoman 
    dbPassword=ILoveTacos 

// approot/server.js 

    require('dotenv').load(); 
+1

謝謝Brian。完美的答案! – jCoder 2015-02-25 02:06:17