Http重定向循环问题 - IIS 7.5

时间:2017-05-13 20:46:04

标签: asp.net redirect iis

在IIS 7.5中,使用global.asax,我打算按如下方式重定向。

方案是这样的,1。应将http +域名重定向到https + www + domainname。

  1. http + www + domainname应重定向到https + www + domainname。
  2. 以下代码

    string currentUrl = HttpContext.Current.Request.Url.ToString().ToLower();
        string newURL = currentUrl;
                try
                {
                    Response.Status = "301 Moved Permanently";
                    newURL = newURL.Replace("http://domainname", "https://www.domainname");
                    newURL = newURL.Replace("http://www.domainname", "https://www.domainname");
    
                    Response.AddHeader("Location", newURL);
                    Response.End();
                }
                catch(Exception ex)
                {
    
                }
    

    它进入无限重定向循环并且根本不加载该站点。有人可以帮忙吗?

    sample twiddle

2 个答案:

答案 0 :(得分:0)

看起来你需要在分配currentUrl之后检查它是否是你想要的格式 - https + www + domainname。如果不是,那么请执行重定向代码,但如果它已经正确,请跳过重定向内容。

答案 1 :(得分:0)