我需要澄清一个基本概念(此处为初学者)。使用/不使用www的跨网址的一致性用户授权
在Django的web应用程序我维护,我注意到,如果通过去example.com
,登录他们仍然在www.example.com
注销(然后可以继续创建克隆帐户)。
1)为什么会发生这种情况?
2)解决这个问题的标准做法是什么?即,在www
和no-www
之间提供一致的体验。
如果答案和重定向一样基本,我可以使用一些指针和一个说明性的例子 - 我使用nginx反向代理与gunicorn。
我需要澄清一个基本概念(此处为初学者)。使用/不使用www的跨网址的一致性用户授权
在Django的web应用程序我维护,我注意到,如果通过去example.com
,登录他们仍然在www.example.com
注销(然后可以继续创建克隆帐户)。
1)为什么会发生这种情况?
2)解决这个问题的标准做法是什么?即,在www
和no-www
之间提供一致的体验。
如果答案和重定向一样基本,我可以使用一些指针和一个说明性的例子 - 我使用nginx反向代理与gunicorn。
1)Django饼干在默认情况下与预先设置的www和非www域不一样.Django认为它是一个不同的会话。
2)PREPEND_WWW设置您可以设置为将您的xyz.com重定向到www.xyz.com。
PREPEND_WWW = True
,或者如果你需要相同的cookie到两个站点,你可以使用session_cookie_domain,
SESSION_COOKIE_DOMAIN = ".yoursite.com"
我不认为任何客户端的东西会阻止用户注册账户的克隆,具有更多如何处理你的模型和视图而不是cookies或者认证的东西 – arielnmz
你还在做什么来记录用户?您是使用内置视图还是自定义登录? – arielnmz
在这个问题的背景下,克隆只是一个观察 - 我们可以忽略它。 –