有什么方法可以使用2个不同的logUrl和ASP.net表单身份验证?如果可能,我想将一些用户发送到不同的登录页面。我尝试在子目录中添加web.config(如下所示),但收到此错误:“在应用程序级别之外使用注册为allowDefinition ='MachineToApplication'的部分是错误的。”。
我已经阅读了这篇文章中的一些SO帖子。我认为这是不可能实现的,或者至少不容易实现。有什么建议?我的网站需要有2个非常不同的登录过程,这就是我尝试这样做的原因。
<!--app root-->
<authentication mode="Forms">
<forms loginUrl="/NormalLogin/Login.aspx" />
</authentication>
<!--subdirectory-->
<authentication mode="Forms">
<forms loginUrl="/SSOLogin/Login.aspx" />
</authentication>
答案 0 :(得分:2)
如果您保留一个,请说<forms loginUrl="/Login.aspx" />
并覆盖Login.aspx页面上的Page_Load方法。检查querystring的returnURL参数,如果它包含NormalLogin,则将它们重定向到/NormalLogin/Login.aspx,否则重定向到SSOLogin / Login.aspx。