A-A+

IIS7/IIS7.5 URL 重写 HTTP 重定向到 HTTPS的方法

2016年11月29日 计算机技术 暂无评论 阅读 5 views 次

在win2008服务器系统中,可以通过 http重定向的功能来进行301的设置,但win2008服务器系统中的 http重定向 功能必须两个域名不一样,比如老域名为 04ie.com,一定要重定向到 xiariboke.net 才可以重定向,如果是 xiariboke.net 重定向到 https://xiariboke.net 则会定向出错,所以我这里想出了一个使用 URL重定向的功能,在 win2008默认的系统中,是不存在这个模块的,要先到微软的官网去下载。

下载地址:http://download.microsoft.com/download/4/E/7/4E7ECE9A-DF55-4F90-A354-B497072BDE0A/rewrite_x64_zh-CN.msi

将其下载下来之后,直接安装即可。

后来经过研究 URL重定向的功能,原来所有的配置都是直接生成到了根目录下的 web.config 文件中,所以如果我们只需要做相同域名重定向的时候,根本就可以不用这个功能,直接拷贝重定向代码即可,如下夏日博客的重定向代码:

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <configuration>  
  3.  <system.webServer>  
  4.   <rewrite>  
  5.    <rules>  
  6.     <rule name="HTTP to HTTPS redirect" stopProcessing="true">  
  7.      <match url="(.*)" />  
  8.      <conditions>  
  9.       <add input="{HTTPS}" pattern="off" ignoreCase="true" />  
  10.      </conditions>  
  11.      <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />  
  12.     </rule>  
  13.    </rules>  
  14.   </rewrite>  
  15.  </system.webServer>  
  16. </configuration>  

这是夏日博客的 http 重定向到 https 的代码,将其保存到 win2008 系统,网站根目录 web.config 文件中即可,如果有其它重定向需求的话,根据需求可以在 URL重定向中定义规则,也可以直接在 web.config 文件中编写。

给我留言