0

我正在使用 Membership Provider 在我的站点中创建和管理用户和角色。我正在尝试使用 web.config 将特定角色的访问权限限制到使用此规则的此文件夹中的 Account 文件夹中:

<system.web>
  <authorization>
    <allow roles="Administrator"/>
    <deny users="*" />
  </authorization>
</system.web>

我正在使用 Web 表单和表单身份验证,如下所示:

<authentication mode="Forms">
  <forms loginUrl="~/Login.aspx" timeout="2880" defaultUrl="~/" />
</authentication>

但是,当我尝试访问位于 Account 文件夹中的页面时,我得到:

HTTP 错误 404.0 - 未找到 您要查找的资源已被删除、名称已更改或暂时不可用。下面是错误的图片:

在此处输入图像描述

当用户尝试访问未经授权的文件夹或 URL 时,如何重定向到登录?

4

1 回答 1

1

您正在访问不存在的Login.aspx类似内容。/Account/Login/Default.aspx

不应该这样~/Account/Login.aspx吗?

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>

如何调试?

  1. 确保您可以正确访问 Login.aspx。
  2. 然后将该 URL 粘贴到 web.config 中的表单标记中,如上所示。
于 2013-07-10T14:36:24.763 回答