2013-03-17 27 views
2

前一段时间,我发布了一个关于表单auth随机超时的问题。我认为这个问题解决了,但显然不是。ASP.NET MVC - 表单认证和www子域

所以:我有会议,membershipprovider,并形成auth超时设置为15分钟。当我查看我的网站时,我正在随机注销,但正如在我的问题中,我发现我主要在链接到我的网站发生更改时(从www.mysite.com到mysite.com,反之亦然)退出登录。这很重要吗?如果是这样,有什么我可以做的,所以mvc会识别www。并没有www。版本一样吗?

+1

你不应该改变你的网站的网址,这是混乱,并导致问题。没有理由这样做。 – 2013-03-17 19:34:24

+0

您应该确保为您的网站设置了规范名称。要么使用www或不要,但不要同时做 – levelnis 2013-03-17 23:45:14

回答

1

通过web.config在您的auth cookie中特别设置cookie域。

其次可能无关,但只是为了安全措施,你是否正在处理会话和表单验证之间的超时同步?即使它们都设置为15分钟,他们可以在不同的时间

超时请参见我的文章在:Forms Authentication Timeout Logging

0

www.mysite.commysite.com之间的差异。他们将运行2个不同的会话和饼干。即使搜索引擎会将它们识别为2个不同的网站。

您应该尝试始终使用指向其中一个的链接,并在请求开始后立即执行301重定向。您可以在Global.asax中添加一些代码以验证主机标头BeginRequest

解决此问题的最佳方法是使用IIS7中的Rewrite模块为您自动执行此操作。