connect-mongo
のストレージ モジュールとして使用しています。から新しい展開express-session
に切り替えるまではすべて正常に機能していましたが、接続できなくなりました。'MongoDB+' TLS/SSL
Compose.io
それらのアーキテクチャの詳細はわかりませんが、詳細については、こちらを参照してください: Bringing SSL To Compose MongoDB
そしてここ: Compose MongoDB+ で SSL に移行
そしてここに: 1つの欠落したキーとそれがどのようにNode.jsを壊したか
接続時にオプションを宣言する必要がmongos
あり、接続コードが次のようになることは知っています。
var fs = require('fs');
var session = require('express-session');
var MongoStore = require('connect-mongo')(session);
var ca = [fs.readFileSync('./Mongo-Key.pem')];
var url = 'mongodb://MY_MONGO_USER:MY_MONGO_PASS@mongos1.compose.io:12345,mongos2.compose.io:54321/Sessions';
app.use(session({
key : 'SessionKey',
secret : 'CATONTHEKEYBOARD',
cookie : {
path : '/',
httpOnly : true,
maxAge : null
},
store : new MongoStore({
url : url,
mongoOptions : {
mongos : {
ssl : true,
sslValidate : true,
sslCA : ca,
ca : ca,
poolSize : 1,
reconnectTries : 1
}
},
collection : 'sessions',
stringify : false
}, function(result) {
console.log('Connected to sessions db!');
return next();
})
}));
その接続文字列は、これらの接続オプションと共に、mongo-native
ドライバーを使用して機能します。接続してすべての操作を実行できます。
しかし、このコンテキストでそれらを適用すると...何も生成されません。ハングするだけです。
さらにデバッグするために出力を生成する方法について何か考えはありますか?
助けてくれてありがとう!