1

我已经为我的网站创建了一个登录系统。这个登录系统应该只保护一个页面(意味着有一个页面需要用户登录才能看到)。我的问题是:由于我创建了这个登录系统,我的所有其他 8 个页面现在都需要验证。这不是我的意图,我一直在疯狂地寻找解决方案,但没有运气。我的 web.config 文件如下所示:

<configuration>
<system.web>
  <compilation debug="true" targetFramework="4.0">
    <assemblies>
      <add assembly="MySql.Data, Version=5.0.9.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D"/>
    </assemblies>
  </compilation>

  <authentication mode="Forms">
    <forms loginUrl="Login.aspx" name=".ASPXFORMSAUTH" timeout="30" />  <!--name =".ASPXFORMSAUTH"-->
  </authentication>

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

唯一需要登录的页面称为 Default.aspx 我的其余页面应该对所有用户公开。我怎样才能做到这一点?谢谢

4

2 回答 2

3

您可以通过使用 web.config 文件中的 location 元素来完成。

<location path="Default.aspx"> 
  <system.web> 
      <authorization> 
            <deny users="?" />
      </authorization> 
   </system.web> 
</location> 
于 2012-04-29T20:38:49.290 回答
2

在 web.config 中使用“位置”并指定要保护的目录。这是一个很好的例子:

http://www.codefixer.com/asp-net/tutorials/protecting-folders-with-forms-authentication.asp

于 2012-04-29T20:38:24.090 回答