От http до https вам нужно сделать редирект.
Основная причина, по которой RewritePath не работает, заключается в том, что http и https работают на разных портах. Кроме того, приложение Start не место, чтобы позвонить этому думает. BeginRequest является единственным.
Поэтому, если вы хотите автоматически изменить все запросы на https, используйте этот код.
protected void Application_BeginRequest(Object sender, EventArgs e)
{
HttpApplication app = (HttpApplication)sender;
string cTheFile = HttpContext.Current.Request.Path;
string sExtentionOfThisFile = System.IO.Path.GetExtension(cTheFile);
if (sExtentionOfThisFile.Equals(".aspx", StringComparison.InvariantCultureIgnoreCase))
{
if (!app.Context.Request.IsSecureConnection)
{
Response.Redirect(app.Context.Request.RawUrl.Replace("http://", "https://"), true);
return;
}
}
// rest of your code here and below
}
Вы также можете использовать этот модуль для автоматического переключения.