2
當我導航到https://mypage.net時,我有一個問題登錄(因爲ReturnUrl =%2f)。表單身份驗證虛擬路徑'/Login.aspx'映射到另一個應用程序,這是不允許的
爲了解決這個問題我已經改變了我global.aspx的Application_BeginRequest:
protected void Application_BeginRequest(object sender, EventArgs e)
{
// redirect user from http to https
if (!Request.IsLocal && !Request.IsSecureConnection)
{
string redirectUrl = Request.Url.ToString().Replace("http:", "https:");
Response.Redirect(redirectUrl);
}
// I HAVE ADDED THESE LINES!!!!!!!!!!!!!!
if (Request.AppRelativen aCurrentExecutionFilePath == "~/")
HttpContext.Current.RewritePath("Login.aspx");
}
現在似乎工作完美,但不是。
的問題是,我有另外一個虛擬應用程序如果我直接進入https://mypage.net/QA/login.aspx那麼一切都很好就是通過 https://mypage.net/QA 訪問。
但是,如果我進入https://mypage.net/QA然後它說:「虛擬路徑‘/Login.aspx’映射到另一個應用程序,這是不允許的。」
- 如果我使用https://mypage.net/QA它給了我一個錯誤
- 如果我使用https://mypage.net/QA/它不給我一個錯誤,併爲Login.aspx加載
- 我也試圖改變global.aspx: HttpContext.Current.RewritePath(「* 〜/ * Login.aspx」); 但在這種情況下,當我安特https://mypage.net/qa應用程序認爲我在https://mypage.net,而不是虛擬應用程序的質量保證。
你怎麼處理?