码农知识堂 - 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导播台多画面使用实测
    • 软件导播台多画面切换支持多人连麦实测(实测组图)

  • 相关阅读:
    ArduPilot开源飞控之AP_InertialNav
    DateTime 相关的操作汇总【C# 基础】
    记一次公司内部技术分享—DDD
    如何管理和维护组件库?
    SharePoint 非365版本接入简要笔记
    JAVA基础总结
    A tour of gRPC:06 - gRPC client straming 客户端流
    解压游戏资源,导出游戏模型
    Elasticsearch架构原理
    小米12sultra支持ip68级防水吗 小米12sultra有光学变焦吗
  • 原文地址:https://blog.csdn.net/ffffffff8/article/details/132710482
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号