0

我有在用户退出时重定向用户的代码:

   if (IsRequestedPage("Login") && Authorization.IsAuthenticated())
            {
                Response.Redirect("CalendarView.aspx");
            }
            else if (LibKezberProjectManager.Data.Context.NeedsFirstUse() && !IsRequestedPage("FirstUse"))
            {
                Response.Redirect("FirstUse.aspx");
            }
            else if (!Authorization.IsAuthenticated() && !IsRequestedPage("Login") && !LibKezberProjectManager.Data.Context.NeedsFirstUse())
            {
                string fileName = this.Page.Request.Url.ToString();
                fileName = fileName.Remove(0, fileName.LastIndexOf("/") + 1);

                Response.Redirect("Login.aspx?redirect=" + fileName);
            }
        }
        public bool IsRequestedPage(string pageName)
        {
            return Request.RawUrl.Contains(pageName + ".aspx");
        }



protected void lnkSignOut_Click(object sender, EventArgs e)
{
    Authorization.Logout();
    Response.Redirect("Login.aspx?logout=true");
}

当我退出时,在某些页面中,而不是带我去:

kezblu.mysite.com/Login.aspx?logout=true

我最终在:

kezblu.mysite.com/kezblu/Login.aspx?logout=true

我无法在本地进行调试...我没有 IIS 服务器。

什么可能导致这种情况?

它应该始终重定向到 kezblu.mysite.com/Destination.aspx

我没有任何附加子域目录的代码。

谢谢

4

1 回答 1

3

您是否尝试过使用Response.Redirect("~/Login.aspx?logout=true")

~/前缀对应于您的 Web 应用程序的根。

于 2013-04-25T11:23:57.733 回答