IIS下实现301域名重定向来自:301 域名重定向

很多伙伴,都可能会遇到一个问题,希望example.comwww.example.com都可以访问到自己的网站,而且还希望在访问example.com后可以301重定向到www.example.com,那么这个效果在windows的IIS上如何实现呢?

下面我们就来一步一步的演示一下:

绑定域名

首先,你的两个域名(也就是example.comwww.example.com)应该都解析到这个服务器上,并且在同一个站点上绑定好他们。

安装URL重写

来到微软官方:https://www.iis.net/downloads/microsoft/url-rewrite

下载,后安装即可。 (首先,要确保你已经安装好了IIS。)

然后打开IIS找到你之前的example.com,你应该可以发现 URL Rewrite 已经出现了。

添加规则

URL Rewrite打开

并点击右上方(标记1处) Add Rule(s)... ,选择(标记2处) Blank rule,点击(标记3处)【确定】按钮。

规则设定

点击【确定】后,会弹出

请按照上图方式填写,就可以实现301跳转效果啦!

下面让我来讲讲这些内容中,重点内容的设置和含义:

  • Name:随便给你的规则取个名称。

  • Requested URL: 请求的URL。我们选择 Matches the Pattern 翻译为 与模式匹配

  • Using : 使用什么样的方式。我们选择 通配符方式 Wildcards

  • Pattern: 模式。我们要在这里写表达式了。他与Requested URLUsing是一个组合,主要表达的是:你可以使用通配符的方式来匹配URL,并获取匹配内容。这里我们添加的*号,也就是我们将获得域名后的所有URL字符。

  • Condittions:条件。我们要在这里面添加:

    这里面的意思就是说:当域名,不满足 www.example.com 这样的条件时,触发下面的 Action

  • Action type: 因为我们要实现 301跳转,所以我们选择 Redirect 重定向。

  • Action Properties - Redirect URL: 指定跳转到哪个URL上,我们设置 http://www.example.com/ ,后面的{R:1}就是将之前匹配获取到的,域名后面的所有URL字符,追加到 http://www.example.com/ 后。也就是说,原来的连接 http://example.com/main/list.html 跳转后 http://www.example.com/main/list.html。域名后面的字符还在。

  • Redirect type: 一定要选择 Permanent(301)

重启你的IIS服务。

置顶你的规则

当我们设置了规则后,你发现发并没有生效,这很可能是你的其他规则,先行执行,发生了影响。所以我建议你,301规则置顶。

好了,访问你的example.com看看效果吧!

测试

如果你的域名可以外网访问:

你可以来到:http://www.ab173.com/zhanzhang/getheader.php ,输入你设置好的域名,查看是否是以301状态跳转。

下一课
收藏
提问我要提问 你在学习本视频的过程中有任何疑问都可以在下面提出。 已标记正确答案 还未标记正确答案
@2024  TCODE    津ICP备13002520号-4