我有多个本地运行的 Django 开发站点,如 http://localhost:8000 , http://localhost:8001 , http://localhost:8002等
最初,我将 SESSION_COOKIE_DOMAIN 和 CSRF_COOKIE_DOMAIN 设置为 '' 或 127.0.0.1但这会导致每个站点都覆盖另一个站点的 cookie,导致我每次在站点之间切换时都必须登录。我尝试使用 127.0.0.1:<port>但这没有效果。
如何让这些网站使用单独的 cookie?
请您参考如下方法:
此问题的一个解决方案是使用本地域名解析来访问您的每个不同的开发服务器。如果你离开SESSION_COOKIE_DOMAIN为 None,则返回的 cookie 是标准域 cookie,并且与请求具有相同的域。
看看http://en.wikipedia.org/wiki/Hosts_(file)其中描述了如何添加本地主机文件条目。
像这样的主机文件:
127.0.0.1 www.testserver1.com www.testserver2.com
然后您可以访问每个不同的测试服务器:
http://www.testserver1.com:8000
http://www.testserver2.com:8001
我还没有尝试过,但我相信它应该有效。
或者,根据 Mikhail 的回答,为每个实例使用不同的 session cookie 名称。
