Windows 2008 R2上配置IIS7或IIS7.5中的URLRewrite(URL重写)实例

31 篇文章 1 订阅
27 篇文章 1 订阅
  1. 安装URL Rewrite模块
    首先从官网下载安装URL Rewrite Module 2.0,下载页面

或者直接点击这里下载:

re_write_x64_zh_CN.msi from microsoft

安装即可

2、URL Rewrite模块配置实例
2.1、在web.config中添加如下节点

<system.webServer>
<rewrite>
<rules>
<rule name="NEWS">
<match url="^N(\d+)\.html$"/>
<action type="Rewrite" url="/ShowNews.aspx?ID={R:1}"/>
</rule>
</rules>
</rewrite>
</system.webServer>

配置结果:
地址栏中输入下面两个网址是等价的:
http://yourdomain/N123456.html
http://yourdomain/ShowNews.aspx?ID=123456

**

3.在IIS上使用URL重写工具的具体步骤

**
URL Rewrite重写工具主要是使用正则或者通配符进行匹配,对于正则和通配符要有一定的了解,可以网上查下相关的资料,这里建议看官方的帮助文档:URL Rewrite Module Configuration 和 IIS URL 重写模块

首先打开IIS下网站的URL重写功能:

url重写图标

我们右键或者右边的操作菜单栏中选择添加规则,我们可以看到默认有提供很多规则模板,这里我们选择一个空白规则作为添加301重定向的重写演示:

重写的选择规则模板

打开编辑入站规则的界面后,我们输入自己定义的名称,选择匹配URL的方式和使用的规则,规则可以选择正则表达式、通配符和完全匹配,这里使用的是正则作为示例。最后在匹配URL模式输入.*(正则表达式,表示匹配所有的路径,这里就是文档中的rule patterns)。

设置rule patterns

关于这里的规则模式,这里建议看这篇文章:详解IIS中URL重写工具的匹配URL-规则模式(rule patterns)

接下来添加URL过滤条件,逻辑分组那根据自己的需求选择,比如笔者是打算做全站301跳转,所以这里用任意匹配。点击添加按钮,设置输入为{HTTP_HOST} ,类型为与模式匹配,模式为^www.shiyousan.com$, 由于之前选择了使用正则作为匹配规则,所以这里要注意使用正确匹配规则。这里主要是设置匹配所有带www的二级域名路径,无论是否有带参数或者目录全部都会匹配到,等于二级域名全站匹配进行重定向跳转。

PS:

服务器变量如果没有就放空不设置。
{HTTP_HOST}服务器变量类型,表示所请求的主机,是规则条件输入的值。如果选择的类型为与模式匹配,一般常用有QUERY_STRING、HTTP_HOST、SERVER_PORT、SERVER_PORT_SECURE、REQUEST_URI等服务变量,建议看这篇文章:详解IIS中URL重写工具的规则条件(Rule conditions),里面有更加详细的说明。
设置condition patterns

最后一步就是设置操作,操作类型有五个选项:重写、无、重定向、自定义响应、中止请求。笔者选择的是重定向,然后设置重定向URL,这里的URL是:http://shiyousan.com/{R:0} 。表示所有www.shiyousan.com的URL地址(包括有带参数的地址以及多级目录的地址)都要跳转到shiyousan.com这个顶级域名的URL中。最后重定向类型选择永久301就大功告成了!!!

在这里插入图片描述

PS:{R:0}是反向引用,表示与匹配url模式.*的正则全部匹配,也就是rule patterns的匹配规则,具体可以看这篇文章:详解IIS中的URL重写工具下关于操作重定向URL中的{R:N}与{C:N},也可以看官方的文档:Using back-references in rewrite rules

R:0与rule patterns

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值