我正在運行NginX,Node和Mongodb。而且我似乎無法從我正在運行的第二個應用程序訪問相同的數據庫。例如,我沒有得到任何回報,當我做:無法從同一服務器上的子域訪問MongoDB
collection.findOne({
name: someName
}, function(err, results){
// Returns no errors or results. Just stops working.
});
我可以訪問數據庫完全從我的第一個應用程序正常,但不第二個。 這是我用來在兩個應用程序中連接到數據庫的代碼。
Server = require('mongodb').Server,
Db = require('mongodb').Db,
db = new Db('database', new Server('localhost', 27017, { auto_reconnect: true }), { w: true });
任何人都知道問題可能是什麼?
編輯:它是否與子域或端口有關?太多聯繫?
編輯2(詳細信息):
我執行MongoDB與service mongodb start
。
在我/etc/mongodb.conf
我有bind_ip = 127.0.0.1
和dbpath=/var/lib/mongodb
(其餘爲默認)
在這兩個我的應用我運行相同的代碼來建立與數據庫的連接,但只有第一個作品(我知道,因爲我我能夠從我的第一個應用程序中的數據庫檢索信息)。
這些應用程序在不同的端口上運行。第一個在端口1337
上運行,第二個在3000
上運行。
您能否包含有關您的配置的所有信息?包括mongod配置,以及如何知道第一個應用程序的連接成功並且來自第二個應用程序的連接不成功? – 2013-05-05 18:48:34
你能否檢查你的mongod日誌 - 這是真正的方法來知道你是否實際上成功連接 - 可能你沒有得到任何數據,因爲你可能會查詢錯誤的數據庫或錯誤的集合? – 2013-05-05 19:10:57
我剛剛清理了我的日誌並進行了檢查。當我從我的第一個應用程序連接時,我得到連接日誌。但在我的第二個應用程序,它只是說: '太陽5月5日23:15:58.342 [initandlisten]等待27017端口連接' 我很確定我正在查詢正確的數據庫/收集(通過代碼複製和多次檢查)。它可能與Nginx有關嗎? – 2013-05-05 19:18:58