当导航到第二页时,Asp.net页面登出用户

时间:2014-05-28 07:54:58

标签: asp.net forms-authentication

当用户登录并转到默认主页(由登录表单重定向)时,一切似乎都很好,用户可以在该页面上工作并根据需要多次重新加载该页面,但是一旦用户点击导航到该网站另一个页面的任何链接,它会再次请求登录。

登录页面是标准的:

    <form runat="server">
    <asp:Login ID="Login1" runat="server" BackColor="#F7F6F3" BorderColor="#E6E2D8" BorderPadding="4"
    BorderStyle="Solid" BorderWidth="1px" FailureText="Log in Failure." Font-Names="Verdana"
    Font-Size="0.8em" ForeColor="#333333" LoginButtonText="Log in" PasswordLabelText="Password:"
    RememberMeText="Remember me." TitleText="Log in." 
        UserNameLabelText="User Name:" onloggedin="Login1_LoggedIn" 
        onloggingin="Login1_LoggingIn" >
    <TitleTextStyle BackColor="#5D7B9D" Font-Bold="True" Font-Size="0.9em" ForeColor="White" />
    <InstructionTextStyle Font-Italic="True" ForeColor="Black" />
    <TextBoxStyle Font-Size="0.8em" />
    <LoginButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px"
        Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284775" />
    </asp:Login>
    &nbsp;</form>
登录页面上的

我执行此操作:

protected void Login1_LoggedIn(object sender, EventArgs e)
    {     
        FormsAuthentication.SetAuthCookie(Login1.UserName, Login1.RememberMeSet);
        FormsAuthentication.RedirectFromLoginPage(Login1.UserName, Login1.RememberMeSet);
    }

我知道这两行都会设置authCookie,但我试图解决这个问题,所以即使尝试了这两行也是如此。

这是web.config

<system.web>
<roleManager enabled="true"/>
<customErrors mode="Off"/>
<membership defaultProvider="AspNetSqlMembershipProvider" userIsOnlineTimeWindow="15">
  <providers>
    <add name=" AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture=neutral,
         PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="false" 
         requiresQuestionAndAnswer="false" requiresUniqueEmail="true" applicationName="/" passwordFormat="Hashed" 
         description="Stores and retrieves membership data from the local Microsoft SQL Server database."/>
  </providers>
</membership>
<authentication mode="Forms">
  <forms loginUrl="~/default.aspx"  defaultUrl="~/dashboard.aspx" timeout="3600" cookieless="UseCookies"> </forms>
</authentication>
<authorization>
  <deny users="?"/>
</authorization>
<compilation debug="true" targetFramework="4.0"/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
  <namespaces>
    <add namespace="System.Data"/>
    <add namespace="System.Data.SqlClient"/>
    <add namespace="System.IO"/>
  </namespaces>
</pages>

关于它为什么会发生的任何想法?,它只发生在我这个网站上,我在同一台服务器上的其他网站表现得很好。

第二次登录后不再发生,只在第一次发生。

0 个答案:

没有答案