加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

同步cookie和会话在不同的子域(asp.net)

发布时间:2020-12-14 18:50:52 所属栏目:资源 来源:网络整理
导读:我正在asp.net建立一个网站,并有多个子域名.例如, one.cookies.com two.cookies.com 我希望我的用户能够登录到两个子域,并登录两个网站.此外,我希望会话和Cookie同步.到目前为止,我还没有找到可靠的方法来做到这一点. 解决方法 创建cookie时,您可以设置域:
我正在asp.net建立一个网站,并有多个子域名.例如,
one.cookies.com
two.cookies.com

我希望我的用户能够登录到两个子域,并登录两个网站.此外,我希望会话和Cookie同步.到目前为止,我还没有找到可靠的方法来做到这一点.

解决方法

创建cookie时,您可以设置域:
HttpCookie cookie = new HttpCookie("name","value");
cookie.Domain = "cookies.com";

这将允许您的cookie可从cookies.com的所有子域访问.

如果您正在使用FormsAuthentication,那么您可以在web.config中设置auth cookie的域:

<forms name=".ASPXAUTH"
       loginUrl="login.aspx"
       defaultUrl="default.aspx"
       protection="All"
       timeout="30"
       path="/"
       requireSSL="false"
       domain="cookies.com">
</forms>

请记住,要使单个登录工作在多个子域上,您的ASP.NET应用程序必须共享与本CodeProject article中所述相同的machine keys.

不同子域(不同的工作进程)之间的共享会话更加困难,因为会话被限制在一个应用程序中,您将必须实现自定义的会话同步机制.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读