Если MVC Helper использует Context.Request.IsSecureConnection
, как указал Дан выше, а ваш сервер приложений находится за балансировщиком нагрузки, который перехватывает HTTPS и пересылает как HTTP, тогда OverrideSecureMode
, скорее всего, будет false
, и рендеринг будетразмещать небезопасно.
Если за балансировщиком нагрузки один из способов найти исходный протокол, это сделать что-то вроде этого (при условии, что у вас есть доступ к полю заголовка X-Forwarded-Proto
).
bool isSecureConnection = String.Equals(
filterContext.HttpContext.Request.Headers["X-Forwarded-Proto"],
"https",
StringComparison.OrdinalIgnoreCase);