我已将defaultUrl
设为
<forms loginUrl="Home/Login.aspx" defaultUrl="Items/Default.aspx" name="MySite" timeout="120" slidingExpiration="true" requireSSL="false"/>
问题是当我第一次登录时它带我到defualtUrl
页面但是一旦我点击退出按钮就会把我记录下来,如果我再次登录它会转到Home/Default.aspx
而不是FormAuthentication
。我正在使用<system.webServer>
<defaultDocument enabled="true">
<files>
<add value="Items/Default.aspx"/>
</files>
</defaultDocument>
</system.webServer>
。
我也尝试过以下设置
{{1}}
我不知道它发生的原因。任何帮助将不胜感激。
由于
答案 0 :(得分:0)
Items/Default.aspx
是否要求对用户进行身份验证才能访问它?如果是这样,可能是造成这种行为的原因。
您可以在web.config中执行此操作,允许匿名用户访问Items/Default.aspx
:
<location path="Items/Default.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
更新:当您找到另一种选择时,这可能是您的问题的解决方法:
在Page_Load
Home/Default.aspx
中,您可以检查用户是否实际经过身份验证并相应地重定向:
if (!this.User.Identity.IsAuthenticated)
{
Response.Redirect("Items/Default.aspx");
}
我希望这有帮助。