IIS将http强转为https(重定向和重写)

2019-05-02 06:10 来源:未知

最近接到一个需求,客户希望无论是http还是https请求都可以访问,并且http能转换成https。研究了一圈发现iis的重定向和重写都可以实现http强转https,记录一下。

昨天各位小伙伴都很开心的领取了自己的SSL证书,但是大部分小伙伴却不知道如何部署,也许是因为第一次接触SSL这种高端的东西吧,不过个人觉得就是懒懒懒。。。本来小编也挺懒的,但是答应了各位小伙伴的,那么今天就教大家如何在IIS环境下部署HTTPS证书吧。(建议在PC端阅读)

用到的东东:

1、首先我们要取走我们的证书,保存在我们本地的电脑里,然后复制到服务器即可。

  Internet信息服务(IIS)管理器7.0

图片 1

       URL重写模块安装包,下载地址x64(32也有):http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=1b8c7bd8-8824-4408-b8fc-49dc7f951a00

2、取走后接下来干嘛?当然是打开文件看看里面有些什么啊。我们找到IIS那个压缩包并解压。

       SSL证书

图片 2

 

3、解析得到pfx文件,也就是我们需要部署域名的证书文件。

1、我们先来准备证书

图片 3

①    打开IIS管理控制台,双击“服务器证书”。

4、小伙伴们可以在服务器上进行这些解析,不过也可以像小编一样在本地进行,然后在服务器内创建个文件夹,把需要的东西复制进去即可。(不要用剪切,你知道的,就算你不知道你也会去百度的)

图片 4

5、然后打开服务器的IIS控制面板。

②   在弹出的窗口中,单击右上角“导入”。

图片 5

 图片 6

6、然后打开IIS的主页找到服务器证书栏,双击打开即可。

③    导入证书文件,注意申请证书时如果填写了密码,这里也要输入相关密码。

图片 7

图片 8 

7、双击打开后,选择导入,导入我们刚刚解压得到的pfx文件,这个pfx文件就是你需要部署域名的那个文件。

2、然后绑定https,让站点可以接收http和https

图片 9

①   右击网站站点,选择“编辑绑定”

8、这个时候我们带https打开我们部署的网站,现在显示的还是红色的。

图片 10 

图片 11

②   在弹出的窗口中,单击“添加”按钮

9、现在我们去找到我们需要部署的网站,在服务器网站栏里,双击绑定。

图片 12 

图片 13

③   切换类型为https,在证书下拉框中选择刚刚导入的证书,最后单击“确认”即可

10、然后我们点添加,添加,添加选择https,443端口。

图片 14

图片 15

*SSL设置不要勾选

图片 16

图片 17

11、这个时候我们通过浏览器打开https的网站。

 

图片 18

3、接下来进入正题,记录一下重定向和重写的实现方式

12、绿了有没有?绿了,绿了啊。。。绿了啊。。。爱上一匹野马,可我的家里没有草原,可是它却绿了一片。。。安全小锁标志啊有没有。。。等等,我们是不是忘了点什么东西?当我们再打开www.domain.com的时候,还是灰的啊。还是没有绿啊,这种很想被绿的感觉有没有?(突然好心疼宝宝)。

重定向

图片 19

通过url规则匹配重定向到新的url中,使用浏览器打开链接时,视觉上会看到http变成https,就好像打开http://www.baidu.com,链接会变成https://www.baidu.com

13、各位宝宝莫慌,抱紧我,接下来小编带大家如何默认访问的是https路径。要做到默认访问https,也许就要做跳转吧,不过HTTPS貌似有个高大上的名字叫做URL重写。我们需要在IIS上下载个重写组件。

我这边站点上挂了三个子站点,Api为接口,其他两个为后台系统、H5

IIS7.5下载地址:

图片 20

中文32位:http://download.microsoft.com/download/4/9/C/49CD28DB-4AA6-4A51-9437-AA001221F606/rewrite_x86_zh-CN.msi

 

中文64位:http://download.microsoft.com/download/4/E/7/4E7ECE9A-DF55-4F90-A354-B497072BDE0A/rewrite_x64_zh-CN.msi

如果把重定向的规则建立在Sites上的话,下面的子站点将都适用于此规则,但是

英文:http://www.iis.net/downloads/microsoft/url-rewrite

弊端:对api进行post请求,url被重定向到新的地址上,由于是重定向跳转,所以post请求会变成get请求,会出现问题。

IIS 8安装URL重写参考文献

解决办法:如果不是所有都需要http强转https,重定向规则就不要设置到总站点上,哪里需要建哪里就好

下载好了之后会发现我们的IIS界面多了个URL重写的组件,开始都没有的,没错,我是刚刚下的。

好了,我们开始创建重定向规则

图片 21

①   安装好URL重写模块成功后,在WeiSites和WeixinPlat站点分别添加URL重写入站规则

利用URL重写唯一就是能够实现全站http跳转https。

单机需要建立规则的站点(以WeiSites为例),双击“URL重写”,在右边窗体中选择“添加规则”,并添加一个空白规则,如下所示:

所以,在部署之前,请检查网站根目录是否有web.config文件,如有,请先备份这里的web.config文件,因为以下的配置可能会和web.config里面跳转冲突,个人建议是直接删除处理,毕竟旧的不去新的不来,哈哈哈(建议先备份)。

图片 22

14、然后继续下一步,双击打开,添加规则。

图片 23 

图片 2415、填写规则名称:Redirect to https,使用正规表达式,模式填写 (.*),然后接下来选择添加条件。第一个填{HTTPS} 与模式匹配 ^OFF$ ,第二个填{HTTPS_HOST} 与模式不匹配 ^(localhost) 。

②   添加以下规则,如图所示(名字随意):

图片 25

TAG标签:
版权声明:本文由美洲杯赌球发布于计算机教程,转载请注明出处:IIS将http强转为https(重定向和重写)