在ExpressJS中设置二级域名跨域共享Cookie

2015-10-22 19:00:00

摘要: 问题:我使用expressjs和mongostore来管理session。下面是expressjs中的设置。 app.configure(function(){     app.use(express.session({   ...

                                           

问题:我使用expressjs和mongostore来管理session。下面是expressjs中的设置。

  1. app.configure(function(){
        app.use(express.session({
            secret: conf.secret,
            maxAge: new Date(Date.now() + 3600000),
            cookie: { path: ‘/‘ },
            store: new MongoStore(conf.db)
        }));
    });

我已经在上面设置了cookie路径。但是它还是把Cookie设置到了子域名 sub.domain.com 中。 如何将其设置到主域名 .domain.com 中?

回答: 这样设置即可。

  1. app.use(express.session({
        secret: conf.secret,
        cookie: { domain:‘.yourdomain.com‘},
        store: new MongoStore(conf.sessiondb)
    }));

注* 使用数据库mongostore来集中管理session,并在各个子域名跨域共享Cookies (SessionID),即可实现为每一个子域分配一个独立的node.js Web服务器,可以实现一定程度上的负载均衡。

来源: stackoverflow.com


你打算打赏多少钱呢?

打赏
(微信扫一扫)