我有哪些主机在IIS下2位点的W2K3服务器,这样我有Mysite.com和foo.mysite.comasp.net域/子域的认证工作不正常
我试图使用窗体身份验证和单一登录。
这两个站点都有相同的机器密钥,并且相同的域以a为前缀。在web.configs中。
我遇到的两个问题是;
1)如果我去http://www.mysite.com/login.aspx,并登录,然后导航到子域,它将我重定向回登录页面。
但是,如果我去http://mysite.com/login.aspx并登录,那么导航到它工作的子域。那么为什么它将www.mysite.com和mysite.com视为单独的域名,从而使我的身份验证无效?
这是我的理解是,添加域=“。mysite.com”将适用于该域下的所有子网站。
2)如果我将子域名登录URL更改为mysite.com而不是www.mysite.com,并首先点击子域名,它会重定向到登录表单,但是当我登录时它不会重定向到子域名,而是查找主站点上的子域页面。即浏览到foo.mysite.com/bar.aspx,它会重定向到登录页面,登录时它现在会尝试显示mysite.com/bar.aspx而不是我第一次请求的页面。
任何帮助解释和解决这些问题是非常值得欢迎的!
谢谢
作为此更新。我在这个网站的其他地方发现了重定向问题的工作。不知道为什么它不像我预期的那样工作,但我现在可以穿过那一个。
其次(在我的测试系统上)以编程方式指定域与www一起工作。而在配置文件中使用domain =“”则不会。
你让我失去了一点点。我需要在配置文件中指定域,以便它适用于子域。配置文件的工作,我遇到的问题是为什么它不会重定向回到子域,如果我成功登录第一次,以及为什么把www。在我的域名之前导致.net将此视为单独的身份验证cookie。 – Matt 2011-03-04 16:15:28
我明白了,我以为你出于某种原因使用了子文件夹。你见过这个帖子吗? http://stackoverflow.com/questions/608120/forms-authentication-across-sub-domains – Trent 2011-03-04 16:27:05
是的,这篇文章让我以编程方式尝试它。我想我只需要记住在将来的配置文件中不要做任何太聪明的事情:) – Matt 2011-03-04 16:35:10