我需要澄清一个基本概念(这里是初学者)。
在我维护的一个 Django 网络应用程序中,我注意到如果一个人通过go to 登录example.com
,他们仍然处于注销状态www.example.com
(然后可以继续创建一个克隆帐户)。
1)为什么会发生这种情况?
2)解决这个问题的标准做法是什么?即,在www
和上给出一致的体验no-www
。
如果答案与重定向一样基本,我也可以在那里使用一些指针和一个说明性示例 - 我正在使用带有 gunicorn 的 nginx 反向代理。
我需要澄清一个基本概念(这里是初学者)。
在我维护的一个 Django 网络应用程序中,我注意到如果一个人通过go to 登录example.com
,他们仍然处于注销状态www.example.com
(然后可以继续创建一个克隆帐户)。
1)为什么会发生这种情况?
2)解决这个问题的标准做法是什么?即,在www
和上给出一致的体验no-www
。
如果答案与重定向一样基本,我也可以在那里使用一些指针和一个说明性示例 - 我正在使用带有 gunicorn 的 nginx 反向代理。
1 ) 默认情况下,Django cookie 不适用于附加 www 和非 www 域。Django 将其视为不同的会话。
2)您可以设置PREPEND_WWW设置以将您的 xyz.com 重定向到 www.xyz.com。
PREPEND_WWW = True
或者,如果您需要对两个站点使用相同的 cookie,则可以使用session_cookie_domain,
SESSION_COOKIE_DOMAIN = ".yoursite.com"