当前位置 主页 > iis相关 >

如何实现IIS HTTP重定向到HTTPS ?

时间: 2018-09-14 14:53 栏目:iis相关

  最近客户一个网站升级至HTTPS协议访问,但是为了用户输入,客户要求当用户输入的是HTTP协议时,能自动定向到HTTPS,类似百度网站,当你输入www.baidu.com并回车后,地址栏自动变成了https://www.baidu.com。
 
  以下步骤简要介绍了如何实现该功能:
 
  1、下载并安装MicrosoftURL重写模块
 
  https://www.microsoft.com/zh-CN/download/details.aspx?id=7435
 
  备注:根据不同的系统,不同的语言选择。
 
  我的机器是英文版的,所以以下截图基本都为英文。
 
  2、站点绑定以下两种协议:
 
  注意:默认的https端口号为443,因为我本机这个端口已经被利用,所以此处以449演示。
 
  3、站点的SSL设置,确保“RequireSSL”未选中。
 
  4、如果是ASP.NET站点,则直接在Web.config文件中添加以下配置节,作为<configuration>的子元素放在文件末尾即可。
 
  <system.webServer>
 
  <rewrite>
 
  <rules>
 
  <rulename="Redirecttohttps"stopProcessing="true">
 
  <matchurl="(.*)"/>
 
  <conditions>
 
  <addinput="{HTTPS}"pattern="^OFF$"/>
 
  <addinput="{HTTPS_HOST}"pattern="^(localhost)"negate="true"/>
 
  </conditions>
 
  <actiontype="Redirect"url="https://{HTTP_HOST}:449/{R:1}"redirectType="SeeOther"/>
 
  </rule>
 
  </rules>
 
  </rewrite>
 
  </system.webServer>
 
  注意:当你使用默认HTTPS端口时,上面的端口号449就不需要了,直接为https://{HTTP_HOST}/{R:1}
 
  上面的配置也可以直接在IIS中的URLWrite中手动添加,完成后大致如下:

缩小 缩小 缩小 缩小