I have implemented https on my application and now i\'m trying to make IIS redirect all http request to https, so that the user doesn\'t even notice this change.
I h
Redirect from HTTP to HTTPS in IIS 7
URL Rewrite is tightly integrated with IIS Manager for better management(Download from https://go.microsoft.com/?linkid=9722532)
enter image description here
Configure Rule Settings
Match URL tab:
name= Redirect 2 HTTPS
url= (.*)
Conditions tab: add record
input= {HTTPS}
pattern= ^OFF$
Action tab:
type= Redirect
redirection URL= https://{HTTP_HOST}/{R:1}
redirectType= Permanent
You can install the RewriteModule and follow the instructions on this page.
The approach described in this blog article works well.
Summary:
1) Turn on "Require SSL" setting for the site.
2) In the Error settings configuration for 403 errors set it to "respond with 302 redirect" with the new URL set to the full URL with the https:// prefix.
Just in case someone else runs into a http:// site that will not redirect. You also have to have the port 80 binding added to the site.
you can make a simple check on the global.asax, on beginRequest, something like this code:
protected void Application_BeginRequest(Object sender, EventArgs e)
{
HttpApplication app = (HttpApplication)sender;
if(!app.Response.Request.IsSecureConnection)
{
app.Response.Redirect(Request.RawUrl.Replace("http://","https://"), true);
return;
}
}
ps. I did not have check this code, I just type it now.