当前位置: 代码迷 >> ASP.NET >> Cookies 子网站有关问题
  详细解决方案

Cookies 子网站有关问题

热度:5891   发布时间:2013-02-26 00:00:00.0
Cookies 子网站问题。
我开发了一个网站要放到已有主网站的内部。
例如(已有主网站域名是:www.sohu.com,  
要访问我的网站就是:www.sohu.com/bbs)
请问怎么设置   Cookies   才能在我的网站里得到已有主网站的   Cookies   。

子网站的设置是在IIS里找到主网站   点击   子网站“属性-应用程序名-添加”

------解决方案--------------------------------------------------------
HttpCookie httpCookie = new HttpCookie();
httpCookie.Domain= ".sohu.com "
------解决方案--------------------------------------------------------
asp.net 1.1/ 2.0 中快速实现单点登陆
问题:
网站有bbs.xxx.com / main.xxx.com / pay.xxx.com 这三个不同的二级域名站,要实现任何一二级域名处登陆,其他各二级域名的站均登陆。
解决办法:
设置cookie的domain属性。
详细介绍:
把保存用户登陆信息的cookie的域设置成一样即可。
usercookie.Domain= ".xxx.com "; 要注意,在域名前必须要加一个 ". "。
这个设置在登陆和退出的时候都需要。
比较普遍的做法自然是用一个专门负责用户登陆的类来管理这些事务。这样其他登陆页面只要调用这个类就可以,一通百通。
而如果你使用asp.net 2.0 和forms验证,则有更简单的办法来完成这个设置。
web.config中添加了对域的支持,只要按照如下的设置即可:
<authentication mode= "Forms ">
<forms loginUrl= "Login.aspx " domain= ".xxx.com " name= ".AutoLinkEduSiteCookie "/>
</authentication>
domain:可选的属性。
指定在传出 Forms 身份验证 Cookie 中设置的可选域。此设置的优先级高于 httpCookies 元素中使用的域。
此属性是 .NET Framework 2.0 版中的新属性。默认值为空字符串 ( " ")。

注意
无论是哪一种办法,cookie的name一定要相同。


------解决方案--------------------------------------------------------
Cookie 似乎是不管主站子站,还是不同的域,只要name一样都可以访问的吧??我一直是这样理解的
------解决方案--------------------------------------------------------
httpCookie.Domain= ".sohu.com "

这句好像不起作用哦!
  相关解决方案