我们有两个不同的mvc web应用程序在单个成员资格提供商上运行。我已经将这两个应用程序放在Web服务器上,并具有虚拟路径:http://aa.svr1/app1http://aa.svr1/app2
如果用户在不同的浏览器中打开app1和app2,则会注销其他应用程序。当用户一次使用一个应用程序时,没有问题,同时使用,它会在其中一个应用中注销。
我已将machinekey放入app1应用程序的web.config文件中,并且运行良好。我在实时服务器上发布了新的tfs,现在又回到了app1和app2同时浏览时的情况,注销了其中一个应用程序。
是什么原因导致了这种阻塞会话/意外的行为?
您可以尝试显式指定身份验证cookie的路径参数:
<forms loginUrl="~/Account/LogOn" timeout="2880" path="app1" />
或者简单地使用两个不同的cookie名称:
<forms name="app1auth" loginUrl="~/Account/LogOn" timeout="2880" />