【问题标题】:ASP.NET Forms Authentication - not redirecting to any pageASP.NET 表单身份验证 - 不重定向到任何页面
【发布时间】:2015-04-09 11:49:01
【问题描述】:

我正在学习 ASP.NET,但对编程世界还是很陌生。

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

“页面无法显示”

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

“此网页有重定向循环”

这是我目前所拥有的:

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

我尝试在&lt;authentication /&gt;loginUrl 之间添加&lt;forms&gt; 标签作为Login.aspx,但仍然是同样的错误。我还添加了&lt;location&gt; 标签以允许访问 App_Themes 和 Images 文件夹。

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

任何帮助将不胜感激!

【问题讨论】:

  • 在您将应用配置为需要身份验证后开始显示“无法显示页面”消息?也许您正在遇到其他问题。
  • 是的,奥伯丹。我不确定问题出在哪里。

标签: c# asp.net authentication


【解决方案1】:

如果这对那里的任何人有帮助,我终于找到了解决方案,在实现 &lt;forms&gt; 标记时,loginUrl 属性的值应该只是登录表单的名称,而不是 .aspx延期。所以它看起来像这样:

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

感谢任何试图提供帮助的人!

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

    • 您似乎没有启用 IIS。尝试启用 iis 功能。将来也会有帮助。 technet.microsoft.com/en-us/library/cc725762.aspx
    • 我在运行命令中输入了ingetmgr,但没有结果?如您所知,在我的项目的“属性”窗口中,在“开发人员 Web 服务器”下,启用了匿名身份验证。
    • 如何启用 IIS?我认为 IIS 已启用,因为我的应用在身份验证之前执行良好。
    • 我安装了 IIS 7.5,但在运行命令中仍然找不到 ingetmgr。我必须在某处进行配置吗?
    • 启用 IIS 后只需重启机器。据我所知,仅此而已:-)
    猜你喜欢
    • 1970-01-01
    • 2016-08-13
    • 2011-09-15
    • 1970-01-01
    • 2014-04-23
    • 2023-04-05
    • 2011-07-01
    • 2011-02-19
    • 2017-09-23
    相关资源
    最近更新 更多