我正在尝试编写一个简单的身份验证。我也试图通过web.config快速了解表单身份验证。
如果我将“用户名”和“密码”硬编码到C#代码中并执行简单的条件化,我的身份验证就可以正常工作。
但是,我收到错误消息'无法识别的元素'身份验证'。
Line 2: <system.web>
Line 3: <customErrors mode="off">
Line 4: <authentication mode="Forms">
Line 5: <forms name=".C#FEWD"
Line 6: loginUrl="/schools/admin/login/index.aspx"
我的web.config文件如下所示:
<configuration>
<system.web>
<customErrors mode="off">
<authentication mode="Forms">
<forms name=".C#FEWD"
loginUrl="/schools/admin/login/index.aspx"
protection="All"
timeout="60">
<credentials passwordFormat="Clear">
<user name="schools" password="magic" />
</credentials>
</forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>
</customErrors>
</system.web>
</configuration>
答案 0 :(得分:3)
可能只是因为你错过了customErrors设置中的节点终止符:
<customErrors mode="off"/>
更多以下评论:
您的完整配置应为:
<configuration>
<system.web>
<customErrors mode="off" />
<authentication mode="Forms">
<forms name=".C#FEWD"
loginUrl="/schools/admin/login/index.aspx"
protection="All"
timeout="60">
<credentials passwordFormat="Clear">
<user name="schools" password="magic" />
</credentials>
</forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</configuration>
答案 1 :(得分:0)
正如Jon所说,<authorization>
节点不应该是<customErrors>
节点的子节点。