我最近将我的asp.net MVC网站切换为https,并希望使用web.config重写将所有现有流量重定向到https://www.example.com。
我尝试了各种组合但尚未成功。 需要处理以下三种情况:
http:// http://www https://
答案 0 :(得分:0)
试试这可能会对你有所帮助:
<system.webServer>
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Permanent"
url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
答案 1 :(得分:0)
您也可以使用Global.asax
重定向您的流量以使用https。
方法名称:Application_BeginRequest
您的重定向代码看起来像这样
strProtocol = "https";
if (HttpContext.Current.Request.Url.ToString().ToLower().StartsWith("http:") == true)
{
Response.Redirect(strProtocol + "://" + strYourHostName + strYourRemainingURL, false);
}
你可以将协议和主机名保存在web.config中并从那里选择。