IIS有两种可以伪静态的工具,一个是UrlRewriter.dll的ISAPI组件,这种重写文件大多是httpd.ini文件,另外一种是iis官方的URL重写工具,今天主要简单介绍一个这个URL重写工具的规则:
它的图标和位置是这样的:

入站规则列表:

这里的规则就是做伪静态的规则,实际上它是一种301跳转。
比如我们打开其中一个规则:

我们可以看到两个关键的地方:
上图中第一红框处即是重写后的url格式的正则表达式。

^forum-(\w+)-([0-9]+).html这表达什么呢?我们这样理解:1.、这表达什么呢?我们这样理解:1.、 这表达什么呢? 我们这样理解: 1. ^、 作为标识了表达式的开头和结尾;
2. 第一个括号:(\w+),\w代表所有大小写字母、阿拉伯数字的匹配,“+”号代表任意长度,总体意义就是限定一个任意长字符串,全部由字母数字组成,前面中间后面都不能有空格、标点等。
3. 第二个括号:([0-9]+),代表任意长度的0-9的数字字符串。
4. 最后.html,\代表转义符,因为后面的“.”需要转义。

下面的第二处红框即代表了需要重写的URL的格式,即什么样的URL会被转移成第一处红框处的url格式。

forum.php?mod=forumdisplay&fid={R:1}&page={R:2}&{C:1}

这个URL中的{R:1}将代入到正则表达式中的第一个括号内,{R:2}将代入到第二个括号内。{C:1}是规则条件。

其中这种URL重写的工具,是匹配网站根目录下的web.config:


<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer><rewrite><rules><rule name="已导入的规则 1"><match url="^topic-(.+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="portal.php?mod=topic&amp;topic={R:1}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 2"><match url="^article-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="portal.php?mod=view&amp;aid={R:1}&amp;page={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 3"><match url="^forum-(\w+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;page={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 4"><match url="^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=viewthread&amp;tid={R:1}&amp;extra=page\%3D{R:3}&amp;page={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 5"><match url="^group-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=group&amp;fid={R:1}&amp;page={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 6"><match url="^space-(username|uid)-(.+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="home.php?mod=space&amp;{R:1}={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 7"><match url="^blog-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="home.php?mod=space&amp;uid={R:1}&amp;do=blog&amp;id={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="已导入的规则 8"><match url="^archiver/(fid|tid)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="archiver/index.php?action={R:1}&amp;value={R:2}&amp;{C:1}" appendQueryString="false" /></rule><rule name="品种分类"><match url="^forum-(\w+)-dogsort-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogsort={R:2}&amp;page={R:3}" appendQueryString="false" /></rule> <rule name="地区分类"><match url="^forum-(\w+)-dogarea-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogarea={R:2}&amp;page={R:3}" appendQueryString="false" /></rule><rule name="品种地区分类"><match url="^forum-(\w+)-dogsort-([0-9]+)-dogarea-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogsort={R:2}&amp;dogarea={R:3}&amp;page={R:4}" appendQueryString="false" /></rule><rule name="品种地区子地区分类"><match url="^forum-(\w+)-dogsort-([0-9]+)-dogarea-([0-9]+)-dogareason-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogsort={R:2}&amp;dogarea={R:3}&amp;dogareason={R:4}&amp;page={R:5}" appendQueryString="false" /></rule><rule name="地区品种分类"><match url="^forum-(\w+)-dogarea-([0-9]+)-dogsort-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogarea={R:2}&amp;dogsort={R:3}&amp;page={R:4}" appendQueryString="false" /></rule><rule name="地区子地区品种分类"><match url="^forum-(\w+)-dogarea-([0-9]+)-dogareason-([0-9]+)-dogsort-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogarea={R:2}&amp;dogareason={R:3}&amp;dogsort={R:4}&amp;page={R:5}" appendQueryString="false" /></rule><rule name="地区子地区"><match url="^forum-(\w+)-dogarea-([0-9]+)-dogareason-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" /><conditions logicalGrouping="MatchAll"><add input="{QUERY_STRING}" pattern="^(.*)$" ignoreCase="false" /></conditions><action type="Rewrite" url="forum.php?mod=forumdisplay&amp;fid={R:1}&amp;dogarea={R:2}&amp;dogareason={R:3}&amp;page={R:4}" appendQueryString="false" /></rule></rules></rewrite>
</system.webServer>

注意规则名称 rule name不可重名,否则网站会报错~

IIS伪静态URL重写规则入门相关推荐

  1. 【建站系列教程】6、.htaccess文件的url重写规则-网页伪静态化

    [建站系列教程]6..htaccess文件的url重写规则-网页伪静态化 如何创建.htaccess文件? .htaccess是什么 htaccess语法教程 写在前面:大家好,我是热爱编程的小泽. ...

  2. IIS配置URL重写

    IIS配置URL重写 一开始IIS配置伪静态,参考了 http://www.cnblogs.com/simoje/p/4764392.html http://www.cnblogs.com/Fooo/ ...

  3. zencart iis 伪静态设置 测试可用

    IIS下如何实现静态化重写?特别是像zen cart等php类型的网站应该是经常碰到.一下教程也是网上找到的,实验下可以成功,这边分享下. 第一:首先我们需要下载一个ISAPI_Rewrite,有精简 ...

  4. Asp.Net MVC2.0 Url 路由入门---实例篇

    本篇主要讲述Routing组件的作用,以及举几个实例来学习Asp.Net MVC2.0 Url路由技术. 接着上一篇开始讲,我们在Global.asax中注册一条路由后,我们的请求是怎么转到相应的Vi ...

  5. 详解IIS中URL重写工具的规则条件(Rule conditions)

    本文结合官方文档和相关示例,详细记录了在IIS中URL重写工具下的规则条件(Rule conditions)的相关说明.规则条件允许我们通过额外的逻辑规则来过滤和匹配规则模式( rule patter ...

  6. 伪静态隐藏域名后缀_你想知道的动态URL、静态URl、伪静态URL概念及区别都在这里!...

    [小宅按]我们说url的动态.静态.伪静态三种形式,其实从严格分类上来说,伪静态也是动态的一种,只是表现形式为静态. 参考:动态url.静态url和伪静态url的详细讲解 - 好文分享 动态URl 动 ...

  7. php html 伪静态,php 伪静态(url重写)的写法

    来看下面这个网页 url: http://www.jbxue.com/test.php/1,100,8630.html 其实处理的脚本是test.php 参数为1,100,8630 相当于test.p ...

  8. 你想知道的动态URL、静态URl、伪静态URL概念及区别都在这里!

    我们说url的动态.静态.伪静态三种形式,其实从严格分类上来说,伪静态也是动态的一种,只是表现形式为静态. 参考:动态url.静态url和伪静态url的详细讲解 - 好文分享 动态URl 动态页面的特 ...

  9. php如何生成伪静态url,thinkphp控制器(三) 伪静态及URL生成

    URL伪静态通常是为了满足更好的SEO效果,ThinkPHP支持伪静态URL设置,可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行.例 ...

最新文章

  1. 什么是生存分析(survival analysis)?
  2. python能处理图片吗_python图片处理(一)
  3. MySQL - 索引优化案例实操
  4. Linux内核模块的概念和基本的编程方法
  5. JS制作支付倒计时页面
  6. noj大作业c语言扫雷,noj大作业.doc
  7. python内置的数字运算函数_Python 内置函数1
  8. OpenCV读取多幅图片,读取系列图片,读取文件夹中指定图像类型的系列图片
  9. 3d效果图制作傻瓜软件_装修房子自己做3D效果图,哪些3D室内设计软件比较合适?...
  10. c语言程序设计流程图案例
  11. Intellij IDEA误删文件恢复
  12. 【放牛娃】奶盘seo自媒体文章伪原创系统
  13. PPT学习整理(五)编辑顶点
  14. HITNet: Hierarchical Iterative Tile Refinement Network for Real-time Stereo Matching--Google
  15. 宏基vn7-591g 固态硬盘安装
  16. 你跳槽怎样考虑可持续性发展
  17. 马克思主义句句是名言
  18. (十五)路过师大 - 5
  19. Java Double类型精确运算解决
  20. mastercam2022新版本 新功能

热门文章

  1. Spring源码深度分析一-Spring前世今生以及源码学习路线图
  2. HFSS入门 T型波导模型优化
  3. 安装Citrix Workspace报错提示NET Framework 4.6.2 or late:Error Code:5100
  4. go语言,安装包fetch error 问题解决方案
  5. 响应式编程项目中总结
  6. jmeter 察看结果树
  7. UOS操作系统重置开机密码
  8. oracle学生选课查询(学生表student、成绩表sc、课程表c)
  9. SIEMENS/西门子1214 PID/通信模板 西门子P SIEMENS/西门子1214 PID/通信模板
  10. PMI-PMP®远程模考三 正题数