LoginStatus不重定向

时间:2013-06-04 10:01:19

标签: c# asp.net webforms loginstatus

我正在开发一个ASP.Net 4.5网站,它有两个部分:未经身份验证和验证。经过身份验证的页面放在/ secure /文件夹中。

我在主页上有LoginStatus。

<asp:LoginStatus ID="LoginStatus1" runat="server" OnLoggedOut="LoginStatus1_LoggedOut" />

的Web.config:

<forms name="Recycle_Auth" loginUrl="~/Login.aspx" defaultUrl="~/secure/Dashboard.aspx" timeout="30" />

如果我在localhost上并且点击“登录”,它有问题,它会回发,但不会重定向到Login.aspx。但是,如果我转到localhost / home.aspx或任何其他页面并单击“登录”,它可以正常工作。

我试过loginUrl =“Login.aspx”没有运气。 Elmah也没有记录任何错误。

任何想法都会受到赞赏。

2 个答案:

答案 0 :(得分:0)

我的第一个猜测请检查路径属性(在身份验证模式下的web.config中)

关于Elmah,请确保将其放在system.webServer

<system.webServer>
  <modules>
      <add name="Elmah.ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
  </modules>
...

答案 1 :(得分:0)

无法找到原因,因此通过在web.config

中添加重定向规则解决了这个问题
            <rule name="Redirect Blank URL" stopProcessing="true">
                <match url="^$" />
                <action type="Redirect" url="Home" appendQueryString="false" />
            </rule>