700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > IIS伪静态URL重写规则入门

IIS伪静态URL重写规则入门

时间:2019-03-04 23:44:50

相关推荐

IIS伪静态URL重写规则入门

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

它的图标和位置是这样的:

入站规则列表:

这里的规则就是做伪静态的规则,实际上它是一种301跳转。

比如我们打开其中一个规则:

我们可以看到两个关键的地方:

上图中第一红框处即是重写后的url格式的正则表达式。

^forum-(\w+)-([0-9]+).html这表达什么呢?我们这样理解: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不可重名,否则网站会报错~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。