ASP.NET 表单身份验证 - 不重定向到任何页面
ASP.NET Forms Authentication - not redirecting to any page
我正在学习 ASP.NET,对编程世界来说还是个新手。
在了解 authentication/authorization
的过程中,我编辑了示例应用程序的 Web 配置文件以启用表单身份验证和拒绝所有未登录用户的授权。我也创建了一个空白的 Login.aspx 表单,但是当我尝试执行该应用程序时,没有出现任何页面。 IE 显示:
"Page can't be displayed"
尽管我被告知它应该自动重定向到我的 Login.aspx
文件。 Opera等其他浏览器显示:
"This webpage has a redirect loop"
这是我目前拥有的:
<system.web>
...
<authentication mode="Forms" />
<authorization>
<deny users="?" />
</authorization>
...
</system.web>
我尝试在 <authentication />
和 loginUrl
之间添加 <forms>
标签作为 Login.aspx
,但仍然出现同样的错误。我还添加了 <location>
标签以允许访问 App_Themes 和图像文件夹。
我目前正在使用集成了 IIS Express 的 VS Express 2013 for Web。
如有任何帮助,我们将不胜感激!
在 IIS 中启用匿名身份验证,然后尝试。
运行->ingetmgr->IIS 组->身份验证->右键单击匿名身份验证并启用。
如果这对那里的任何人都有帮助,我最终找到的解决方案是,在实施 <forms>
标记时,loginUrl
属性的值应该只是登录表单的名称,没有 .aspx
扩展名。所以它看起来像这样:
<system.web>
<authentication mode="Forms">
<forms loginUrl="~/Login" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
感谢所有试图提供帮助的人!
我正在学习 ASP.NET,对编程世界来说还是个新手。
在了解 authentication/authorization
的过程中,我编辑了示例应用程序的 Web 配置文件以启用表单身份验证和拒绝所有未登录用户的授权。我也创建了一个空白的 Login.aspx 表单,但是当我尝试执行该应用程序时,没有出现任何页面。 IE 显示:
"Page can't be displayed"
尽管我被告知它应该自动重定向到我的 Login.aspx
文件。 Opera等其他浏览器显示:
"This webpage has a redirect loop"
这是我目前拥有的:
<system.web>
...
<authentication mode="Forms" />
<authorization>
<deny users="?" />
</authorization>
...
</system.web>
我尝试在 <authentication />
和 loginUrl
之间添加 <forms>
标签作为 Login.aspx
,但仍然出现同样的错误。我还添加了 <location>
标签以允许访问 App_Themes 和图像文件夹。
我目前正在使用集成了 IIS Express 的 VS Express 2013 for Web。
如有任何帮助,我们将不胜感激!
在 IIS 中启用匿名身份验证,然后尝试。
运行->ingetmgr->IIS 组->身份验证->右键单击匿名身份验证并启用。
如果这对那里的任何人都有帮助,我最终找到的解决方案是,在实施 <forms>
标记时,loginUrl
属性的值应该只是登录表单的名称,没有 .aspx
扩展名。所以它看起来像这样:
<system.web>
<authentication mode="Forms">
<forms loginUrl="~/Login" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
感谢所有试图提供帮助的人!