如果设置了域,浏览器将忽略cookie

时间:2014-06-19 15:21:01

标签: asp.net cookies

我需要在azure上部署的两个Web应用程序之间共享cookie(例如x1.azurewebsites.net,x2.azurewebsites.net)

我认为我需要做的就是设置域名:

Response.Cookies.Add(new HttpCookie("TEST", "BLE")
{
Domain = "azurewebsites.net"
});

但它不起作用。

出于测试目的,我补充说:

Response.Cookies.Add(new HttpCookie("TEST2", "AQQ"));

这个工作正常 - 但它仅在x1.azurewebsites.net

上可用

所以问题是上面的代码有什么问题?

是否可以像这样分享cookie?

也许这是安全问题? - 我知道azuerwebsites上托管的每个应用程序都可以访问存储在我的cookie中的信息

2 个答案:

答案 0 :(得分:5)

我发现我的问题类似于

Chrome34 ignores cookies with domain ".cloudapp.net"

因此,我的问题的原因是浏览器出于安全原因检查域名的publicsuffix.org列表并阻止cookie。

欲了解更多信息,请参阅: http://publicsuffix.org/

答案 1 :(得分:0)

RFC2109说,明确指定的域名必须以点开头。

http://www.ietf.org/rfc/rfc2109.txt