2012-03-24 10 views
16

को ठीक करने के लिए कैसे करें NODE_ENV=production का उपयोग करते समय मुझे चेतावनी मिल रही है। इसके लिए क्या तय है?कनेक्शन.session issue

चेतावनी: connection.session() MemoryStore के रूप में यह
स्मृति रिसाव हो जाएगा, और स्पष्ट रूप से केवल एक ही प्रक्रिया के भीतर काम करते हैं,
उत्पादन परिवेश के लिए नहीं बनाया है।

+0

आपका कोड क्या है? – Mustafa

+2

इस जवाब पर एक नज़र डालें: [http://stackoverflow.com/questions/10760620/using-memorystore-in-production#10761522][1] [1]: http: //stackoverflow.com/questions/10760620/using-memorystore-in-production#10761522 –

उत्तर

8

रेडिस का उपयोग अपने सत्र प्रबंधक के रूप में करना एक अच्छा विचार हो सकता है। ऐसा लगता है कि आप या तो एक्सप्रेस या कनेक्ट फ्रेमवर्क का उपयोग कर रहे हैं, और उनमें से किसी के लिए आप एक एनपीएम पैकेज connect-redis (रेडिस स्थापित कर सकते हैं) का उपयोग कर सकते हैं। उस स्थापित के साथ एक्सप्रेस कोड इस तरह कुछ दिखाई देगा:

var express = require ('express') 
    , RedisStore = require ('connect-redis') (express) 
    , sessionStore = new RedisStore() 
    , app = express.createServer() 
    ; 

app.configure (function() { 

    app.use (express.cookieParser()); 
    app.use (express.session ({ 
    secret: "keyboard cat", store: sessionStore, key: 'hello.sid' 
    })); 
... 
+0

मुझे सत्र स्टोर के लिए रेडिस का उपयोग किया गया था। लेकिन यहां मुझे केवल व्यवस्थापक प्रमाणीकरण की आवश्यकता है। यही कारण है कि मैं सरल समाधान की तलाश में हूं –

+2

@ गणेश कुमार यह [इसलिए सवाल] (http://stackoverflow.com/questions/8749907/what-is-a-good-session-store-for-a-single-host- नोड-जेएस-प्रोडक्शन-ऐप) विशेष रूप से आपकी समस्या से संबंधित है। शायद डेटाबेस के बजाय आप जुड़े प्रश्न में वर्णित सुरक्षित कुकी मार्ग का पता लगाना चाहेंगे। –

+0

धन्यवाद audio.zoom –

संबंधित मुद्दे