太多的重定向MVC项目

时间:2018-04-30 17:14:20

标签: owin

我有一个使用Azure Active Directory作为SSO的.net项目。经过测试,一切都在本地运行良好。

我在具有2个负载均衡器的环境中部署了项目,并且我开始收到错误消息:

此页面无效 xxx.com重定向了你太多次了。 尝试清除您的cookie。 ERR_TOO_MANY_REDIRECTS

  protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);

        AntiForgeryConfig.UniqueClaimTypeIdentifier = ClaimTypes.NameIdentifier;

        //This is the line causing the issue
        GlobalFilters.Filters.Add(new RequireHttpsAttribute()); 


    }

在chrome中,网站正确加载但在IE中,为OpenId创建的Cookie太多了。

我也尝试了这个:

      protected void Application_BeginRequest()
      {
         if (!Context.Request.IsSecureConnection)

         Response.Redirect(Context.Request.Url.ToString().Replace("http:", 
        "https:"));
      }

我甚至尝试过KentorOwin:

         app.SetDefaultSignInAsAuthenticationType
         (CookieAuthenticationDefaults.AuthenticationType);

        app.UseKentorOwinCookieSaver();

        app.UseCookieAuthentication(new CookieAuthenticationOptions());   

但似乎没有任何效果。

请帮忙吗? 谢谢。

1 个答案:

答案 0 :(得分:0)

我开始知道我正在使用的环境是接受HTTPS作为请求,然后重定向到HTTP,因为有负载均衡器。

可能是probs的原因。