将node-passport与子域一起使用

时间:2012-05-24 14:58:53

标签: node.js redis express

我有一个node.js应用程序,使用express connect-redis来存储会话。我也使用vhost作为受密码保护的用户应用程序:

app.use(express.vhost('users.mydomain.com',require('./ users / app')));

这样可以正常工作,但我想查看用户是否在www.mydomain.com登录。我尝试将其添加到session():

cookie:{domain:'。yourdomain.com'}

当我这样做时,它只会在用户和www之间销毁会话,但不会共享会话。我迷失了问题所在。

编辑:我发现会话在vhosts之间存活,除非我在该虚拟主机上使用护照。

1 个答案:

答案 0 :(得分:0)

听起来你有两个拥有自己域名的应用程序。一种可能的解决方案是确保两个应用程序共享相同的session_save_path,并确保在从一个应用程序移动到另一个应用程序时传递会话。

希望有所帮助