當試圖連接到MongoDB的-2.4墨盒我不斷收到以下OpenShift MongoDB的ECONNREFUSED
==> app-root/logs/nodejs.log <==
Error: connect ECONNREFUSED 127.0.0.1:27017
at Object.exports._errnoException (util.js:893:11)
at exports._exceptionWithHostPort (util.js:916:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1075:14)
我創建的連接字符串如下
if(process.env.OPENSHIFT_MONGODB_DB_PASSWORD){
connection_string = process.env.OPENSHIFT_MONGODB_DB_USERNAME + ":" +
process.env.OPENSHIFT_MONGODB_DB_PASSWORD + "@" +
process.env.OPENSHIFT_MONGODB_DB_HOST + ':' +
process.env.OPENSHIFT_MONGODB_DB_PORT + '/' +
process.env.OPENSHIFT_APP_NAME;
}
它看起來失敗時它像認爲端口是27017,但是當我運行rhc端口轉發appname時,它顯示出以下不同端口,用於mongodb
Service Local OpenShift
------- --------------- ---- ------------------------------------------------------
haproxy 127.0.0.1:8080 => 127.6.174.2:8080
haproxy 127.0.0.1:8081 => 127.6.174.3:8080
mongodb 127.0.0.1:42346 => 5747fa8f70-appname.rhcloud.com:42346
node 127.0.0.1:8082 => 127.6.174.1:8080
任何想法,以什麼回事?
MongoDB正在42346上運行,並且日誌顯示您要在端口27017上連接mongodb。嘗試連接它42346 –
@JitendraKhatri我已經在上面說過了。如果MongoDB的盒通過OpenShift提供爲什麼它返回所提供process.env.OPENSHIFT_MONGODB_DB_PORT變量錯誤的端口號? – medoix
嘗試連接字符串,mongodb的這種格式://: @本地/ 。這是爲我工作很好 –