在同一本地主机和会话管理上的许多Django项目

时间:2019-02-11 22:19:53

标签: django

当我将四个Django项目作为同一个apache2本地主机的子域运行时,用户会话会感到困惑并不断退出。 我正在使用标准的Django身份验证系统。 有解决这个问题的方法吗? 预先感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

这里的问题是cookie是为某个域存储的,因此您的所有项目都为同一域存储sessionid cookie(这是会话的默认名称);即localhost。最终发生的是,每个项目都将覆盖您先前登录的项目的sessionid Cookie,从而使会话“无效”。一个简单的解决方案是为每个项目使用不同的Cookie名称。

这可以通过在django设置中将SESSION_COOKIE_NAME显式设置为每个项目唯一的某个值来完成,例如项目名称。