IIS URL Rewrite(URL 重写)-使用教程
IIS URL Rewrite(URL 重写)-使用教程
URL Rewrite 是微软提供的、用于 IIS 的、免费的 URL 重写、重定向工具,网址:http://www.iis.net/download/URLRewrite。在 IIS 7.5 中,不需要下载了,默认就有,如果没有,请在角色服务中添加。
URL Rewrite 安装后,可在 IIS 中配置,也可以直接在 web.config 中写。本文介绍如何在 IIS 中配置,要 web.config 中手写的话,可参照 IIS 配置后生成的 web.config 来学习。
本文通过配置一个重定向的规则来抛砖引玉。
进入
打开 IIS,选择某个站点,进入 URL Rewrite 功能模块,单击右边操作面板的“Add Rule(s)”,选择 Inbound rules 中的 Blank rule。
Match URL
Match URL 用处不大,为什么呢?因为它实际上是匹配 URL 的 主机名后面那个 / 的后面部分(不包含 /),比如 c/123.htm。

我们一般如上图配置。Requested URL 选择 Matchs the Pattern,即符合模式的进入后面的判断;Using 选择 Wildcards,这个比正则表达式简单,用 * 代表任意长度的任意字符;Pattern 一般写 *,即任何 URL 都进入判断。
Conditions
这个才是重点,它的条件非常丰富,不仅是 URL,还有很多条件可以选择,比如客户端 IP。

如上图:我这里写了 Input 是 {HTTP_POST},这个搞个 Web 开发的就很清楚,表示主机;Type 选择 Matches the Pattern;Pattern 是 www.cftea.com,也就是说当访问的主机(域名)是 www.cftea.com 时。左上角 Match All 表示要符合列表中的所有条件才行,Match Any 表示只要符合列表中的任何一个条件就行。
这里还有一个比较有用的变量 {URL},表示除开主机名的那部分,比如 /course/csharp/2.aspx,没有前面的 http://www.cftea.com 部分。注意这是个坑:前面的 URL 不以 / 开头,这里又以 / 开头。
Server Variables

这个功能就更强了,同样,搞过 Web 开发的都知道 Server Variables,像获取客户端 IP、User Agent 这些,都可以在这里用。这里就不作介绍了。
Action
前面介绍的都是条件,这里是要真正动作了,就是符合条件了要做什么。
Action Type 选项有很多,最常用的应该是 Rewrite 和 Redirect 吧,Rewrite 就是我们平时所说伪静态,Redirect 就是重新定位到另一 URL。

如上,{REQUEST_URI} 是原始 URL 中主机名后面的部分,包含 /。我这里只是演示,所以从图上看,实际上我是定位到当前 URL,都是 www.cftea.com 为主机名。如果用了 * 或正则表达式,还可用变量,比如 {C:1} 表示 Condition 中第二个匹配项。Redirect Type 请参见 301、302、303、307,用哪个? 。
IIS URL Rewrite(URL 重写)-使用教程的更多相关文章
- win10 IIS 10.0 无法安装 URL Rewrite Module 重写模块
打开注册表 win+R 输入 regidit在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp位置 修改注册表 把MajorVersion的值改为9 安装 ...
- php 伪静态 (url rewrite mod_rewrite 重写)
mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面.下面我详细说说它的使用方法!对初学者很有用的哦!1.检测Apache是否支持mod_rewrite通过php提供的php ...
- IIS URL Rewrite – Installation and Use
IIS URL Rewrite – Installation and Use Posted by Nick LeFevre | Leave a reply IIS URL Rewrite Instal ...
- IIS:URL Rewrite实现vue的地址重写
vue-router 全局配置 const router = new VueRouter({ mode: 'history', routes: [...] }) URL Rewrite 1.添加规则 ...
- 在IIS 中如何配置URL Rewrite,并且利用出站规则保持被重写的Cookie的域
Url Rewrite配置 xx.aa.com/bb/test1.aspx 会重写到 bb.aa.com/test1.aspx 具体怎么配置入站 出站规则 结果:
- 使用微软 URL Rewrite Module 开启IIS伪静态
原文 使用微软 URL Rewrite Module 开启IIS伪静态 在IIS5和IIS6时代,我们使用URL REWRITING可实现URL重写,使得WEB程序实现伪静态,但默认情况下只能实现.A ...
- 在ASP.NET MVC中使用IIS级别的URL Rewrite
原文 在ASP.NET MVC中使用IIS级别的URL Rewrite 大约一年半前,我在博客上写过一系列关于URL Rewrite的文章(2.3.4),把ASP.NET平台上进行URL Rewrit ...
- windows服务器下IIS7 安装URL Rewrite(URL重写)模块
URL Rewrite Module是一个基于规则的URL重写引擎,用于在URL被Web服务器处理之前改变请求的URL.对于动态Web应用程序,它可以为用户和seo/seo.html" ta ...
- Url Rewrite 再说Url 重写
前几天看到园子里一篇关于 Url 重写的文章<获取ISAPI_Rewrite重写后的URL>, URL-Rewrite 这项技术早已不是一项新技术了,这个话题也已经被很多人讨论过多次.搜索 ...
随机推荐
- 中国大学MOOC 邮箱验证的问题
在使用 中国大学 MOOC 过程中,在PC端修改个人资料时,其中有项“常用邮箱”,于是写了QQ邮箱,结果发现一直无法验证,连邮件都无法收到. 经过多番尝试,重新使用邮箱注册的方式注册账号,然后注册成功 ...
- 本次我们使用idea构建springmvc项目
该案例的github地址:https://github.com/zhouyanger/demo/tree/master/springmvcdemo1 1.首先我们可以创建maven项目,file-&g ...
- 制作PPT时的一些技巧记录
1.当一页PPT上有很多图片,要选择其中一张图片时,发现图片都重叠了,不好选择时该怎么办? 2.对动画的编辑 技巧:与选择窗口配合使用
- Java进阶学习(2)之对象交互(下)
访问属性 封闭的访问属性 private等访问权限控制是对类的,这意味着同一类的不同对象可以互相访问其成员 这是从代码层面去考虑的,意味着不同类文件 开放的访问属性 一个类文件就是一个编译单元 pub ...
- ubuntu 先安装php再安装apache后,php不解析
本来服务器是nginx ,把他改成了apache, 安装apache, sudo apt-get updatesudo apt-get install apache2 然后访问ip,不成功 vim / ...
- cordova将vue项目打包成apk
1,若vue项目不在cordova项目里,直接把它复制进来,避免改动代码的麻烦 2,直接按照以下链接进行操作即可 链接:https://www.cnblogs.com/qirui/p/8421372. ...
- ES6-对象的简写方式
var name = 'tom'; var age = 11; //es5定义对象 var obj = { name:name, age ...
- IIS反向代理配置教程(最终完整版本)
IIS代理配置教程 插件下载:https://download.csdn.net/download/song_yan_/11996489 一.安装反向代理插件 1.rewrite插件安装 (1) 双击 ...
- 数据分析--excel
excel 的使用 1.excel基础 1.数据类型 数字类型 字符类型 注意: 1.普通文本:默认作对齐,左上方没有小绿点,数字默认又对齐 2.数字存储为文本类型,美容默认为左对齐,左上方有小绿点 ...
- dfs(迷宫)
问题 J: 棋盘行走 时间限制: 1 Sec 内存限制: 128 MB[命题人:admin] 题目描述 小Biu在玩一个棋盘游戏,这个游戏给出一个n*m的棋盘,并且每个点上有一个棋子,棋子的颜色 用 ...