跨网址的一致用户授权,有/无www

时间:2017-07-25 19:01:01

标签: django web no-www www-authenticate

我需要澄清一个基本概念(这里是初学者)。

在我维护的Django网络应用程序中,我注意到如果通过example.com登录,他们仍会在www.example.com上注销(然后可以继续创建一个克隆帐户。)

1)为什么会这样?

2)解决这个问题的标准做法是什么?即,在wwwno-www之间提供一致的体验。

如果答案与重定向一样基本,我也可以使用一些指针和说明性示例 - 我正在使用nginx反向代理和gunicorn。

1 个答案:

答案 0 :(得分:1)

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"