琢磨了几天都没有搞好,难道iis10真的实现不了http301重定向到https吗?这里我要说清楚,是让www和不带www同时301定向到https,我测试了nginx可以现实,下图是nginx的实现效果图,在这里我想要知道iis10如何实现?(IIS6、iis7.5、iis8.5就别说了,因为跟iis10不同)iis10是windows-server2016、2019的服务器环境。 求大神解答,必须301!302无意义!问了几个月了,没人能解答,难道iis真的做不到吗?微软真的不行吗?
IIS10使用URL重写工具实现www、@,301强制HTTPS访问。
前提条件:例如域名“baidu.com、www.baidu.com”首先要在IIS WEB站点绑定域名80与443,配置好SSL证书,确保HTTP与HTTPS都可以访问的条件下配置以下步骤。
具体方法:
- 安装“URL 重写”或者“URL Rewrite”模块 , 如果您已经安装可以跳过。分为64位与32位,可以查看服务器操作系统选择。
选择站点URL 重写,如果安装的是英文版的应该是【Url Rewrite】
添加规则,名称:Gworg,匹配URL 模式: (.*),添加条件: {HTTPS} 模式: off,操作类型选择:重定向,重定向URL: https://{HTTP_HOST}/{R:1},重定向类型:301
IIS301重定向
web.config方法:网站创建:web.config 文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Gworg" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
完成后需要进入:“URL 重写”或者“URL Rewrite”模块
URL重写
重定向类型改成:301保存。
你的这个方法我尝试了,不行。例如:
你的办法只是将 baidu.com 重定向到 https://baidu.com
www.baidu.com 重定向到 https://www.baidu.com
我要的结果是:将baidu.com 重定向到 https://www.baidu.com
将www.baidu.com 重定向到 https://www.baidu.com
不管用户怎么访问都在 https://www.baidu.com 这样不容易分散权重,全部301定向到 https://www.baidu.com
重定向URL: https://{HTTP_HOST}/{R:1},请改成比如:重定向URL: https://www.baidu.com/{R:1}