我喜欢SEO、网络营销及建站,希望与志同道合的您
建立合作或相互学习关系 QQ:10343829

IIS8 通过web.config 使http跳转到https

此方法可以将:IIS8 通过web.config 使http跳转到https

缺点:此方法仅能实现

http://www.liyunbo.cn 跳转到 https://www.liyunbo.cn

http://liyunbo.cn 跳转到 https://liyunbo.cn

不能实现:

http://www.liyunbo.cn

http://liyunbo.cn

https://liyunbo.cn

均跳转到:https://www.liyunbo.cn

在不少的企业当中,网站设计出于安全的考虑使用了https协议,但同时公司也开放了80协议,不少用户因为输入网址的习惯不喜欢带上https协议,导致访问异常。最近一个客户也要求我帮助解决这个问题,客户的邮件服务器exchange 2010采用https,客户端部署有outlook anywhere,客户现在要求用户访问http://mail.abc.com能够自动跳转到https://mail.abc.com/owa。具体操作如下:

第一步:从微软的官方网站下载HTTP重写模块2.0(这里以64位为例):http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=1b8c7bd8-8824-4408-b8fc-49dc7f951a00;如下图所示:

 

第二步:在安装exchange 2010 CAS服务器上安装IIS重写模块rewrite_x64,安装完毕之后重启IIS服务,之后打开IIS控制台,发现多了一个组件,如下所示:

 

 

 

第三步:双击“URL重写”,在右边窗体中选择“添加规则”,并添加一个空白规则,如下所示:

 

第四步:添加以下规则,如图所示:(黄色部分是需要填写或选择的部分)

第五步:继续填写未填写完成的部分,如下所示:

第六步:点击右边空体上方的“应用”。

 

第七步:添加http_host条件,如下所示:

 

最后确定完成所有设定,实际上上面的文件是改变了web.config的配置文件内容或者直接在网站根目录新建web.config 粘贴如下代码进去,保存即可,和上面效果一个样

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="http redirect to https" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="^OFF$" />
                        <add input="{HTTPS_HOST}" pattern="^(localhost)" negate="true" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
 

 

 

 

 

 

转载请著名来源:天天小站 » IIS8 通过web.config 使http跳转到https

分享到:更多 ()