Por que a minha página de login associação asp.net não funciona com um redirecionamento?
-
22-08-2019 - |
Pergunta
Eu tenho essa configuração associação local na minha máquina local usando o provedor de associação ASP.NET. Quando eu vou para:
Ele me
redirecionahttp:? //Localhost/Login.aspx ReturnUrl =% 2fadmin% 2fDefault aspx
O que é bom. Mas depois que eu colocar na minha informação de login, a página parece apenas para refrescar. Na verdade, não me faça o login, e isso só parece que atualiza a página. Se eu mudar a URL para:
Ele funciona muito bem. Isso me faz login nenhum problema, e me redireciona para minha página padrão. Eu também verificado o site ao vivo e ele faz a mesma coisa. Alguma ideia? Agradecemos antecipadamente!
EDIT: Aqui está a marcação:
<asp:Login ID="Login1" runat="server" CssClass="LoginBox" TitleText="Please Log In">
<LayoutTemplate>
<h2>
Please Log In:</h2>
<p runat="server" id="FailureText" visible="false">
Either your email address or password was incorrect. Please try again.</p>
<strong>Email</strong><br />
<asp:TextBox ID="UserName" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName"
Text="*"></asp:RequiredFieldValidator>
</p>
<p>
<strong>Password</strong><br />
<asp:TextBox ID="Password" runat="server" TextMode="Password"></asp:TextBox>
<asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password"
Text="*"></asp:RequiredFieldValidator>
</p>
<p>
<asp:Button ID="Login" CommandName="Login" runat="server" Text="Log In" /></p>
<p>
Please <a runat="server" id="Link_ContactUs">contact </a>an administrator if you
are having trouble logging in or have forgotten your password.</p>
</LayoutTemplate>
</asp:Login>
configuração web.config:
<authentication mode="Forms">
<forms loginUrl="/Login.aspx"
protection="All"
timeout="60"
name="AppNameCookie"
path="/Admin"
requireSSL="false"
slidingExpiration="true"
defaultUrl="/Admin/Default.aspx"
cookieless="UseCookies"
enableCrossAppRedirects="false" />
</authentication>
Solução
Você pode nos mostrar algum código? Se você estiver usando método FormsAuthentication.RedirectFromLoginPage
, você deve obter o que deseja. Você está usando FormsAuthentication.SetAuthCookie
vez?
Atualização
Alterar path="/Admin"
em web.config
para path=/
A razão que não funciona é que o cookie de autenticação é só definir no caminho /Admin
e trata navegador URLs seus como caso sensíveis por isso não vai enviar a volta cookie de autenticação para a página /admin/Default.aspx
(admin
minúsculas).