日期:2014-05-18  浏览次数:20482 次

关于ASP.NET 身份验证配置问题,高手急救!!!!!
在根目录下面有N两个子目录,其中目录N1和N2要求身份认证才能登录
但是N1.对应的登录页是N1login.aspx,N2对应的是N2.Login.aspx   这个怎么解决!

也就是说当请求N1目录的时候T到N1login.aspx登录页去,当请求N2的时候T到
N1login.aspx登录页去,而不是都T到Login.aspx页去

------解决方案--------------------
新建一个login.aspx 在web.config 里设置这个
然后把下面的代码改下~~
string url = Request.QueryString[ "ReturnUrl "];
if (url != null)
{
if (Request.ApplicationPath != "/ ")
{
url = url.Replace(Request.ApplicationPath, " ");
}

if (!url.StartsWith( "/ "))
url = "/ " + url;

string path = url.Split( '/ ')[1].ToLower();
switch (path)
{
case "manage ":
Response.Redirect( "/manage/login.aspx?ReturnUrl= " + Server.HtmlDecode(Request.QueryString[ "ReturnUrl "]), false);
break;
case "user ":
Response.Redirect( "/user/login.aspx?ReturnUrl= " + Request.QueryString[ "ReturnUrl "], false);
break;
default:
Response.Redirect( "/ ");
break;
}
}
else
Response.Redirect( "/ ");
}