iis之http重定向https

IIS7下面默认HTTPS绑定是无法指定主机头的,但我们可以通过手工修改IIS配置来实现主机头绑定。

打开C:Windowssystem32inetsrvconfigapplicationHost.config

定位到如下位置:

                <bindings>
                    <binding protocol="https" bindingInformation="*:443" />
                    <binding protocol="net.tcp" bindingInformation="808:*" />
                    <binding protocol="net.pipe" bindingInformation="*" />
                    <binding protocol="net.msmq" bindingInformation="localhost" />
                    <binding protocol="msmq.formatname" bindingInformation="localhost" />
                    <binding protocol="http" bindingInformation="*:80:www.zhuimengzhu.com" />
                </bindings>

找到https的配置项目,修改为:

<binding protocol="https" bindingInformation="*:443:www.zhuimengzhu.com" />

加上

<binding protocol="https" bindingInformation="*:443:zhuimengzhu.com" />

注意这里的www.console.com要换成你自己的域名,之后保存即可。

为了保证域名统一,将访问 http://zhuimengzhu.com、http://www.zhuimengzhu.com、https://zhuimengzhu.com 的域名都跳转到https://www.zhuimengzhu.com,IIS 可以进行如下配置 url重写 (需要安装 IIS UrlRewrite 模块,代码注释是为了方便理解,部署到线上请删除中文注释):

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="HostNameRule1">
                    <match url="(.*)" />
                    <!–匹配所有条件–>
                    <conditions logicalGrouping="MatchAny">
                        <!–当不是使用https协议访问的时候–>
                        <add input="{HTTPS}" pattern="^OFF$" />
                        <!–并且访问的host不是zhuimengzhu.com这种,例如www.zhuimengzhu.com–>
                        <add input="{HTTP_HOST}" pattern="^www.zhuimengzhu.com$" negate="true" />
                    </conditions>
                    <!–跳转到https–>
                    <action type="Redirect" url="https://www.zhuimengzhu.com/{R:1}" />
                </rule>
                <rule name="HTTPS redirect">
                    <match url="(.*)" />
                    <conditions>
                        <!–当使用HTTPS协议访问–>
                        <add input="{HTTPS}" pattern="^ON$" />
                        <!–当访问 https://zhuimengzhu.com的时候 –>
                        <add input="{HTTP_HOST}" pattern="^www.zhuimengzhu.com$" negate="true" />
                    </conditions>
                    <!–跳转到HTTPS–>
                    <action type="Redirect" url="https://www.zhuimengzhu.com/{R:1}" redirectType="SeeOther" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

然后保存

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值