当前位置: 首页 > news >正文

伪静态web.config常见规则写法与参数介绍说明

伪静态web.config常见规则写法与参数介绍说明.

示例1:

<?xml version="1.0" encoding="UTF-8"?>
<configuration><system.webServer><rewrite><rules><rule name="规则 1" stopProcessing="true"><match url="^includes/(.*)" /><action type="Rewrite" url="includes\/{R:1}" /></rule><rule name="规则 2" stopProcessing="true"><match url="^(blog)/includes/(.*)" /><action type="Rewrite" url="{R:1}/includes\/{R:2}" /></rule><rule name="规则 3" stopProcessing="true"><match url="^(blog)/(.*).html(.*)" /><action type="Rewrite" url="{R:1}/index.php\/{R:2}.html{R:3}" /></rule><rule name="规则 4" stopProcessing="true"><match url="^(.*).html(.*)" /><action type="Rewrite" url="index.php\/{R:1}.html{R:2}" /></rule></rules></rewrite></system.webServer>
</configuration>

示例2:

<?xml version="1.0" encoding="UTF-8"?><configuration><system.webServer><rewrite><rules><rule name="Imported Rule 1"><match url="list-([0-9]+)\.html" ignoreCase="false"/><action type="Rewrite" url="plus/list.php?tid={R:1}" appendQueryString="false"/></rule><rule name="Imported Rule 2"><match url="list-([0-9]+)-([0-9]+)-([0-9]+)\.html" ignoreCase="false"/><action type="Rewrite" url="plus/list.php?tid={R:1}&TotalResult={R:2}&PageNo={R:3}" appendQueryString="false"/></rule><rule name="Imported Rule 3"><match url="view-([0-9]+)-([0-9]+)\.html" ignoreCase="false"/><action type="Rewrite" url="plus/view.php?arcID={R:1}&pageno={R:2}" appendQueryString="false"/></rule></rules></rewrite></system.webServer></configuration>

示例3:

<?xml version="1.0" encoding="UTF-8"?><configuration><system.webServer><rewrite><rules><rule name="portal_topic"><match url="^(.*/)*topic-(.+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/portal.php?mod=topic&topic={R:2}&{R:3}"/></rule><rule name="portal_article"><match url="^(.*/)*article-([0-9]+)-([0-9]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/portal.php?mod=view&aid={R:2}&page={R:3}&{R:4}"/></rule><rule name="forum_forumdisplay"><match url="^(.*/)*forum-(\w+)-([0-9]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/forum.php?mod=forumdisplay&fid={R:2}&page={R:3}&{R:4}"/></rule><rule name="forum_viewthread"><match url="^(.*/)*thread-([0-9]+)-([0-9]+)-([0-9]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/forum.php?mod=viewthread&tid={R:2}&extra=page%3D{R:4}&page={R:3}&{R:5}"/></rule><rule name="group_group"><match url="^(.*/)*group-([0-9]+)-([0-9]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/forum.php?mod=group&fid={R:2}&page={R:3}&{R:4}"/></rule><rule name="home_space"><match url="^(.*/)*space-(username|uid)-(.+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/home.php?mod=space&{R:2}={R:3}&{R:4}"/></rule><rule name="home_blog"><match url="^(.*/)*blog-([0-9]+)-([0-9]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/home.php?mod=space&uid={R:2}&do=blog&id={R:3}&{R:4}"/></rule><rule name="forum_archiver"><match url="^(.*/)*(fid|tid)-([0-9]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/index.php?action={R:2}&value={R:3}&{R:4}"/></rule><rule name="plugin"><match url="^(.*/)*([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+).html\?*(.*)$"/><action type="Rewrite" url="{R:1}/plugin.php?id={R:2}:{R:3}&{R:4}"/></rule></rules></rewrite></system.webServer></configuration>

提示1、<rule>节点的name不能重复。

提示2、<match>里的url是一个正则表达式,实例里^(.*)t/([0-9,a-z]*)是一个常用的句式。

^匹配域名开头,如:https://tony.8952.com/,注意域名后面有个斜杠/

(.*)匹配任何字符。

([0-9,a-z]*)匹配任何数字和字母。

因此,^(.*)t/([0-9,a-z]*) 可以匹配如下的访问网址(假如网站域名是tony.8952.com):

提示3、<action type="Rewrite" ...>表示执行的类型是重写,里面的url是实际网址,{R:1}/list.asp?id={R:2} 的解释如下:

{R:1}对应<match>里的url的第一个括号内容,{R:2}对应<match>里的url的第二个括号内容,如果有{R:3}{R:4},如此类推。

所以,如果假如用户访问的网址是

http://tony.8952.com/t/123
http://tony.8952.com/news/t/a1

那么,其对应的实际网址是

http://tony.8952.com/list.asp?id=123
http://tony.8952.com/news/list.asp?id=a1

提示4、按照上面的解释,你应该差不多能读懂实例的rule2重写规则了。

$,这是个结束符,表示匹配的url到此结束,后面没有其他字符了。

([0-9]+) 表示匹配任何数字。

\.html 表示匹配 .html

\?表示匹配一个问号?

特别要注意,反斜杠\是转义符,因为正则表达式里,一点.是表示匹配任何字符的意思,所以要加上反斜杠对其转义,这样才表示匹配的是一个点.

同样地,问号?也是一个元符号,它表示匹配前面的子表达式零次或一次,因此,也需要在其前面加上转义符\,这才表示匹配的是一个问号?

提示5、其他

ignoreCase="false" 表示不能忽略大小写,如果该值设为true,则表示忽略大小写。

appendQueryString="false" 表示不使用url参数。

 MR虚拟直播

  • MR直播实例(混合现实直播)高品质企业直播
  • 企业年会直播来个虚拟舞台场景如何?
  • MR直播(混合现实直播)做一场高品质企业培训
  • MR场景直播-帮助企业高效开展更有意思的员工培训
  • 企业多会场视频直播(主会场、分会场直播)实例效果
  • 虚拟直播(虚拟场景直播)要怎么做?

无延迟直播

  • 无延时直播/超低延时直播画面同步性测试(实测组图)
  • 搞定企业视频直播:硬件设备、直播网络环境和设备连接说明
  • 无延时/无延迟视频直播实例效果案例
  • OBS无延迟视频直播完整教程(组图)
  • 毫秒级超低延时直播产品实测(PRTC直播/webRTC直播)

视频加密与安全

  • 企业培训视频如何防止被下载和盗用?
  • 在线教育机构视频加密防下载和防盗用的方法有哪些可以借鉴
  • 上新:视频加密功能增加防录屏(随机水印)功能
  • 两种实现视频倍速播放的方法(视频播放器倍速1.5x/2x)
  • 教育培训机构教学课程内容视频加密是如何做的?

在线导播台

  • 在线导播台(网页导播台)混流效果
  • OBS Studio导播台多画面使用实测
  • 软件导播台多画面切换支持多人连麦实测(实测组图)

http://www.lryc.cn/news/159219.html

相关文章:

  • 使用kubasz快速搭建Kubernetes集群
  • php常用加密算法大全aes、3des、rsa等
  • ubuntu22.04搭建verilator仿真环境
  • python中如何使用正则表达匹配\本身?(文末赠书)
  • Linux学习之MySQL连接查询
  • 【Hello Algorithm】二叉树相关算法
  • ExpressLRS开源代码之工程结构
  • fastjson 1.2.24 反序列化导致任意命令执行漏洞复现
  • 探秘MySQL三个神秘隐藏列(mysql三个隐藏列) rownum、rowid、oid
  • leetcode刷题--数组类
  • Vue3---uni-app--高德地图引用BUG
  • Stable Diffuse 之 本地环境部署/安装包下载搭建过程简单记录
  • 护航数字政府建设,美创科技成为“数字政府建设赋能计划”成员单位
  • Kafka3.0.0版本——消费者(消费者组原理)
  • 天津web前端培训班 前端是否适合零基础学?
  • Paimon+StarRocks 湖仓一体数据分析方案
  • 界面控件DevExtreme(v23.2)下半年发展路线图
  • docker镜像配置mysql、redis
  • CentOS7无法连接网络 右上角网络图标消失
  • 为什么创建 Redis 集群时会自动错开主从节点?
  • 分布式 - 服务器Nginx:基础系列之Nginx静态资源配置优化sendfile | tcp_nopush | tcp_nodelay
  • 【动手学深度学习】--语言模型
  • uni-app 之 目录结构
  • 批量上传图片添加水印
  • CPU和GPU性能优化
  • 虚拟机(三)VMware Workstation 桥接模式下无法上网
  • [BFS] 广度优先搜索
  • 蓝桥杯官网填空题(矩形切割)
  • 通过Docker Compose安装MQTT
  • Golang企业面试题