2013-05-28 44 views
3

我有一个网站与自定义的登录页面。失败的登录不会返回到正确的页面

在web.config中,我有以下代码;

<configuration> 
    <system.web> 
     <roleManager enabled="true" /> 
     <authentication mode="Forms"> 
     <forms loginUrl="~/Admin/login.aspx" timeout="2880"></forms> 
     </authentication> 
     <compilation debug="true" targetFramework="4.5" /> 
     <httpRuntime targetFramework="4.5" /> 
     <pages validateRequest="false" /> 
     <customErrors mode="Off"></customErrors> 
     <membership> 
     <providers> 
      <clear/> 
      <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="DetaySanConnectionString" 
       enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" 
       maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" 
       applicationName="/" /> 
     </providers> 
     </membership> 
    </system.web> 
    <appSettings> 
    <add key="ValidationSettings:UnobtrusiveValidationMode" value="None"/> 
    </appSettings> 
    <location path="Admin"> 
    <system.web> 
     <authorization> 
     <deny users="?" /> 
     </authorization> 
    </system.web> 
    </location> 

</configuration> 

此外,我的管理员文件夹拒绝anonymus条目。
此设置用于为我工作,但在此特定网站上尝试链接时;

websiteurl.com/admin 它重定向我

websiteurl.com/Account/Login?ReturnUrl=%2fadmin 

,而事实上,它应该是

websiteurl.com/login.aspx?ReturnUrl=%2fadmin 

帮助,将不胜感激

回答

2

对于那些谁是好奇的问题是由添加

<add key="loginUrl" value="login.aspx"/>

在web.config中

到的appSettings解决。

0

删除path="Admin"和改变loginUrl="~/Admin/login.aspx"看看怎么了。

此外,请检查Admin文件夹是否有单独的web.config与网站根目录中的文件夹冲突。

+0

仍然是同样的错误,管理文件夹确实有一个web.config,拒绝anonymus用户只有这些;

+0

嗯,我想知道您是否使用过visual studio来设置表单身份验证。你可能在vs创建的本地数据库中有一些隐藏的设置,并且它们覆盖了你的web.config。 – Ted

+0

嗯,不知道,我拒绝访问visual Studio上的asp.net配置工具上的管理文件夹后,我自己添加登录页面和身份验证模式到web.config。 –

相关问题