Слишком много перенаправлений проекта MVC - PullRequest
0 голосов
/ 30 апреля 2018

У меня есть проект .net, использующий Azure Active Directory в качестве единого входа. Протестировано и все работает локально.

Я развернул проект в среде с балансировщиком нагрузки 2 и начал получать сообщение об ошибке:

Эта страница не работает xxx.com перенаправил вас слишком много раз. Попробуйте очистить ваши куки. 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 слишком много файлов cookie, которые создаются для OpenId.

Я пробовал это также:

      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 голосов
/ 02 мая 2018

Я узнал, что среда, которую я использую, принимает HTTPS в качестве запроса, который затем перенаправляется на HTTP, поскольку существуют балансировщики нагрузки.

Может быть причиной проб.

...