2012-08-07 25 views
8

मैं अपने ऐप के लिए एकाधिक सबडोमेन प्रबंधित करने के लिए एक्सप्रेस के साथ एक्सप्रेस में vhost सुविधा का उपयोग कर रहा हूं। एप्लिकेशन को एक ही सत्र रहस्य और कुंजी का उपयोग करता है, और मेरा मानना ​​है कि मैं सही सत्र कुकी सेटिंग्स का उपयोग किया है:अभिव्यक्ति में सबडोमेन में

cookie: { 
      path  : '/', 
      domain : '.example.com', 
      httpOnly : false, 
      maxAge : 1000*60*60*24*30*12 //one year(ish) 
     } 

मैं अपने नियमित रूप से साइट पर एक सत्र चर जहां उपडोमेन अपरिभाषित उदा है सेट http://example.com तो जैसे:

req.session.rep_id = rep._id; 
res.redirect('https://' + company.name + '.example.com/'); 

लेकिन जब मैं उन्हें पुन: निर्देशित सत्र subdomain.example.com के लिए कुछ भी करने के लिए rep_id कुंजी सेट नहीं है। ऐसा लगता है कि सत्र सबडोमेन के बीच रीसेट हो रहा है। मैं इसके आसपास कैसे पहुंचू?

उत्तर

4

कुछ विचार:

कोशिश .example.com से अवधि को हटाने के। मेरा विचार यह है कि आप रूट डोमेन पर रहते हुए, सबडोमेन-केवल कुकी सेट करने का प्रयास कर रहे हैं। मैंने पढ़ा है कि example.com पर सेट की गई कुकीज़ सभी सबडोमेन पर भी उपलब्ध होगी।

उपयोगकर्ता को एक सबडोमेन पर तुरंत रीडायरेक्ट करने का प्रयास न करें, पहले यह सत्यापित करने के लिए कि कुकी आपके रूट डोमेन पर काम कर रही है। अपने सर्वर से प्रतिक्रिया शीर्षलेख का निरीक्षण करें, फिर देखें कि आपके ब्राउज़र ने कुकी को अगले अनुरोध में रखा है या नहीं। केवल तभी जब आप सुनिश्चित हों कि यह सबडोमेन पर सही ढंग से नेविगेट कर रहा है।