码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 伪静态web.config常见规则写法与参数介绍说明


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

    示例1:

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <configuration>
    3. <system.webServer>
    4. <rewrite>
    5. <rules>
    6. <rule name="规则 1" stopProcessing="true">
    7. <match url="^includes/(.*)" />
    8. <action type="Rewrite" url="includes\/{R:1}" />
    9. </rule>
    10. <rule name="规则 2" stopProcessing="true">
    11. <match url="^(blog)/includes/(.*)" />
    12. <action type="Rewrite" url="{R:1}/includes\/{R:2}" />
    13. </rule>
    14. <rule name="规则 3" stopProcessing="true">
    15. <match url="^(blog)/(.*).html(.*)" />
    16. <action type="Rewrite" url="{R:1}/index.php\/{R:2}.html{R:3}" />
    17. </rule>
    18. <rule name="规则 4" stopProcessing="true">
    19. <match url="^(.*).html(.*)" />
    20. <action type="Rewrite" url="index.php\/{R:1}.html{R:2}" />
    21. </rule>
    22. </rules>
    23. </rewrite>
    24. </system.webServer>
    25. </configuration>

    示例2:

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <configuration>
    3. <system.webServer>
    4. <rewrite>
    5. <rules>
    6. <rule name="Imported Rule 1">
    7. <match url="list-([0-9]+)\.html" ignoreCase="false"/>
    8. <action type="Rewrite" url="plus/list.php?tid={R:1}" appendQueryString="false"/>
    9. </rule>
    10. <rule name="Imported Rule 2">
    11. <match url="list-([0-9]+)-([0-9]+)-([0-9]+)\.html" ignoreCase="false"/>
    12. <action type="Rewrite" url="plus/list.php?tid={R:1}&TotalResult={R:2}&PageNo={R:3}" appendQueryString="false"/>
    13. </rule>
    14. <rule name="Imported Rule 3">
    15. <match url="view-([0-9]+)-([0-9]+)\.html" ignoreCase="false"/>
    16. <action type="Rewrite" url="plus/view.php?arcID={R:1}&pageno={R:2}" appendQueryString="false"/>
    17. </rule>
    18. </rules>
    19. </rewrite>
    20. </system.webServer>
    21. </configuration>

    示例3:

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <configuration>
    3. <system.webServer>
    4. <rewrite>
    5. <rules>
    6. <rule name="portal_topic">
    7. <match url="^(.*/)*topic-(.+).html\?*(.*)$"/>
    8. <action type="Rewrite" url="{R:1}/portal.php?mod=topic&topic={R:2}&{R:3}"/>
    9. </rule>
    10. <rule name="portal_article">
    11. <match url="^(.*/)*article-([0-9]+)-([0-9]+).html\?*(.*)$"/>
    12. <action type="Rewrite" url="{R:1}/portal.php?mod=view&aid={R:2}&page={R:3}&{R:4}"/>
    13. </rule>
    14. <rule name="forum_forumdisplay">
    15. <match url="^(.*/)*forum-(\w+)-([0-9]+).html\?*(.*)$"/>
    16. <action type="Rewrite" url="{R:1}/forum.php?mod=forumdisplay&fid={R:2}&page={R:3}&{R:4}"/>
    17. </rule>
    18. <rule name="forum_viewthread">
    19. <match url="^(.*/)*thread-([0-9]+)-([0-9]+)-([0-9]+).html\?*(.*)$"/>
    20. <action type="Rewrite" url="{R:1}/forum.php?mod=viewthread&tid={R:2}&extra=page%3D{R:4}&page={R:3}&{R:5}"/>
    21. </rule>
    22. <rule name="group_group">
    23. <match url="^(.*/)*group-([0-9]+)-([0-9]+).html\?*(.*)$"/>
    24. <action type="Rewrite" url="{R:1}/forum.php?mod=group&fid={R:2}&page={R:3}&{R:4}"/>
    25. </rule>
    26. <rule name="home_space">
    27. <match url="^(.*/)*space-(username|uid)-(.+).html\?*(.*)$"/>
    28. <action type="Rewrite" url="{R:1}/home.php?mod=space&{R:2}={R:3}&{R:4}"/>
    29. </rule>
    30. <rule name="home_blog">
    31. <match url="^(.*/)*blog-([0-9]+)-([0-9]+).html\?*(.*)$"/>
    32. <action type="Rewrite" url="{R:1}/home.php?mod=space&uid={R:2}&do=blog&id={R:3}&{R:4}"/>
    33. </rule>
    34. <rule name="forum_archiver">
    35. <match url="^(.*/)*(fid|tid)-([0-9]+).html\?*(.*)$"/>
    36. <action type="Rewrite" url="{R:1}/index.php?action={R:2}&value={R:3}&{R:4}"/>
    37. </rule>
    38. <rule name="plugin">
    39. <match url="^(.*/)*([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+).html\?*(.*)$"/>
    40. <action type="Rewrite" url="{R:1}/plugin.php?id={R:2}:{R:3}&{R:4}"/>
    41. </rule>
    42. </rules>
    43. </rewrite>
    44. </system.webServer>
    45. </configuration>

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

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

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

    (.*)匹配任何字符。

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

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

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

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

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

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

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

    1. http://tony.8952.com/list.asp?id=123
    2. 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导播台多画面使用实测
    • 软件导播台多画面切换支持多人连麦实测(实测组图)

  • 相关阅读:
    css3-盒子模型、内外边距、圆角边框
    Linux目录结构与路径
    SqlServer单机发布订阅
    “一键导出,高效整理:将之前的部分记录导出!“
    业务架构·应用架构·数据架构实战~战略驱动的业务架构设计
    2024/3/5打卡最长上升子序列**----线性DP,贪心,单调栈
    【名词解释】concolic testing和instrumentation
    vue跨域proxy详解(下)
    Mysql与Oracle分页查询差异
    【JavaScript脚本宇宙】从jQuery到Popmotion:DOM操作和动画库
  • 原文地址:https://blog.csdn.net/ffffffff8/article/details/132710482
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号