IIS8默认是没有安装URL重写工具的,必需要本身下载安装。正则表达式
若是IIS上默认有安装Web平台安装程序,咱们可使用平台自动安装URL Rewrite重写工具,打开IIS(Internet 信息服务管理器),在管理器主页中找到管理项,打开Web平台安装程序,以下图:服务器
在Web平台安装程序中选择产品》服务器,在列表中找到URL重写工具,点击添加后点击安装,便可自动安装好!以下图:工具
咱们也能够手动下载URL Rewrite插件,这是官方地址:URL Rewrite下载post
这里有两种方式,一种是下载Web平台安装程序的插件包进行在线安装,点击下载页面中的Install this extension按钮下载urlrewrite2.exe安装程序,双击后会自动运行Web平台安装程序安装URL重写工具2.0。网站
另一种方式是下载离线安装包,下载地址在页面靠近底部的Download URL Rewrite Module 2.0区块。不过要选择对应本身网站服务器的版本,好比笔者的服务器是64位,中文简体,就要选择如图所示的版本:this
这两种方式都没有什么复杂的步骤,基本一直点击下一步直到完成就能够了。url
2015/10/21更新,如今下载连接只有版本的区别,没有语言区别了,语言会根据服务器自动判断:spa
URL Rewrite重写工具主要是使用正则或者通配符进行匹配,对于正则和通配符要有必定的了解,能够网上查下相关的资料,这里建议看官方的帮助文档:URL Rewrite Module Configuration 和 IIS URL 重写模块.net
首先打开IIS下网站的URL重写功能:插件
咱们右键或者右边的操做菜单栏中选择添加规则,咱们能够看到默认有提供不少规则模板,这里咱们选择一个空白规则做为添加301重定向的重写演示:
打开编辑入站规则的界面后,咱们输入本身定义的名称,选择匹配URL的方式和使用的规则,规则能够选择正则表达式、通配符和彻底匹配,这里使用的是正则做为示例。最后在匹配URL模式输入.*(正则表达式,表示匹配全部的路径,这里就是文档中的rule patterns)。
关于这里的规则模式,这里建议看这篇文章:详解IIS中URL重写工具的匹配URL-规则模式(rule patterns)
接下来添加URL过滤条件,逻辑分组那根据本身的需求选择,好比笔者是打算作全站301跳转,因此这里用任意匹配。点击添加按钮,设置输入为{HTTP_HOST} ,类型为与模式匹配,模式为^www.shiyousan.com$, 因为以前选择了使用正则做为匹配规则,因此这里要注意使用正确匹配规则。这里主要是设置匹配全部带www的二级域名路径,不管是否有带参数或者目录所有都会匹配到,等于二级域名全站匹配进行重定向跳转。
PS:
最后一步就是设置操做,操做类型有五个选项:重写、无、重定向、自定义响应、停止请求。笔者选择的是重定向,而后设置重定向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