Asp.net 同一应用程序中的多个表单

Asp.net 同一应用程序中的多个表单,asp.net,login,forms-authentication,Asp.net,Login,Forms Authentication,我想知道是否可以使用具有以下目录结构的两种不同的FormsAuthentication登录: /default.aspx /login.aspx /web.config /子目录/sublogin.aspx /子目录/subdefault.aspx /子目录/web.config 根目录中的web.config包含以下设置: <authentication mode="Forms"> <forms protection="All" slidingExpiration="t

我想知道是否可以使用具有以下目录结构的两种不同的FormsAuthentication登录:

/default.aspx
/login.aspx
/web.config
/子目录/sublogin.aspx
/子目录/subdefault.aspx
/子目录/web.config

根目录中的web.config包含以下设置:

<authentication mode="Forms">
  <forms  protection="All" slidingExpiration="true" loginUrl="~/login.aspx" path="/"/>
</authentication>
<authorization>
  <deny users="?"/>
</authorization>

我想要实现的是,除“subdirectory”之外的所有目录都受到根目录中login.aspx的保护子目录“”有自己的login.aspx(sublogin.aspx)

子目录中web.config的正确内容是什么样子的?

只能在machine.config或应用程序的根web.config中定义
web.config部分。无法在应用程序的子文件夹中指定它


但是,您可以做的是创建另一个ASP.NET应用程序,该应用程序恰好存在于另一个应用程序中。然后,每个都可以有自己的身份验证设置。不过,在这种情况下,它们将是单独的应用程序,这可能会导致其他问题。

我不确定这是否完全正确。请引用您的参考资料,因为我无法在MSDN上对此进行验证。请向下滚动至底部,其中显示“可配置位置”,并列出以下内容:Machine.config、Root-level-Web.config、Application-level-Web.config。您需要两次登录的原因是什么?您可以使用一个登录表单,只使用“location”标记或其他表单控制对子目录的访问吗?您是否希望用户为该子目录登录两次?我对此没有明确的用例。我被问到这一点,回答说这是可能的,因为我认为我做了类似的事情。由于找不到那块sourecode,我开始编写测试应用程序,但失败了;)