0

我已经设置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>

我不知道它发生的原因。任何帮助将不胜感激。

谢谢

4

1 回答 1

0

是否Items/Default.aspx需要对用户进行身份验证才能访问它?如果是这样,它可能是这种行为的原因。

Items/Default.aspx您可以通过在 web.config 中执行此操作来允许匿名用户访问:

<location path="Items/Default.aspx">
<system.web>
    <authorization>
        <allow users="*"/>
    </authorization>
</system.web>
</location>

更新:当您找到另一种选择时,这可能是您的问题的解决方法:

在您可以检查用户是否实际经过身份验证并相应地重定向它们Page_LoadHome/Default.aspx

if (!this.User.Identity.IsAuthenticated)
{
    Response.Redirect("Items/Default.aspx");
}

我希望这会有所帮助。

于 2012-09-11T10:27:58.013 回答