当用户登录并转到默认主页(由登录表单重定向)时,一切似乎都很好,用户可以在该页面上工作并根据需要多次重新加载该页面,但是一旦用户点击导航到该网站另一个页面的任何链接,它会再次请求登录。
登录页面是标准的:
<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>
</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>
关于它为什么会发生的任何想法?,它只发生在我这个网站上,我在同一台服务器上的其他网站表现得很好。
第二次登录后不再发生,只在第一次发生。