ASP.NET Forms身份验证 - 不重定向到任何页面

时间:2015-04-09 11:49:02

标签: c# asp.net authentication

我正在学习ASP.NET,对编程世界来说还是一个新手。

在了解authentication/authorization时,我编辑了我的示例应用程序的Web配置文件以启用表单身份验证,并授权拒绝所有未登录的用户。我也创建了一个空白的Login.aspx表单,但是当我尝试执行该应用程序时,没有页面出现。 IE显示:

  

"页面无法显示"

即使我告诉它应该自动重定向到我的Login.aspx文件。其他浏览器如Opera显示:

  

"此网页有一个重定向循环"

这是我到目前为止所做的:

<system.web>
    ...
    <authentication mode="Forms" />
    <authorization>
        <deny users="?" />
    </authorization>
    ...
</system.web>

我尝试在<forms><authentication />之间添加loginUrl代码Login.aspx,但仍然是同样的错误。我还添加了<location>代码,以便访问App_Themes和Images文件夹。

我目前正在使用集成了IIS Express的VS Express 2013 for Web。

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:2)

如果这对任何人有帮助,我终于找到了解决方案,在实现<forms>标记时,loginUrl属性的值应该只是登录表单的NAME,WITHOUT .aspx扩展程序。所以它看起来像这样:

<system.web>
    <authentication mode="Forms">
        <forms loginUrl="~/Login" />
    </authentication>
    <authorization>
        <deny users="?" />
    </authorization>
</system.web>

感谢那些试图提供帮助的人!

答案 1 :(得分:0)

在IIS中启用匿名身份验证,然后尝试。

运行 - &gt; ingetmgr-&gt; IIS群组 - &gt;身份验证 - &gt;右键单击匿名身份验证并启用。