惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Stack Overflow Blog
Stack Overflow Blog
Vercel News
Vercel News
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
J
Java Code Geeks
M
MIT News - Artificial intelligence
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
MongoDB | Blog
MongoDB | Blog
G
Google Developers Blog
Engineering at Meta
Engineering at Meta
量子位
S
SegmentFault 最新的问题
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
A
About on SuperTechFans
P
Proofpoint News Feed
Last Week in AI
Last Week in AI
Recent Announcements
Recent Announcements
腾讯CDC
I
InfoQ
F
Fortinet All Blogs
Hugging Face - Blog
Hugging Face - Blog
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
爱范儿
爱范儿

博客园 - uxinxin

.NET10 中配置Swagger的记录 .NET10中通过appsettings.json配置文件获取信息的几个方法 学习使用Taurus的微服务群在.NET Framework4.8环境下的搭建 .net framework 中Owin 通过启动类 Startup.cs 使用 SignalR B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【八】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【七】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【六】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【五】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【四】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【三】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 【二】 B站朝夕教育 【.NET9.0+WPF实战三类流程化业务逻辑控制】学习记录 .NET程序屏蔽一些无效蜘蛛的访问配置 asp.net 动态加载与卸载程序集的尝试(没有成功)欢迎解决的朋友留言告知 Framework 4.6.2下的SignalR使用,以及WPF下同步使用 react 16.8.4版本中的生命周期中的细节 在组件挂在时使用了定时器的处理——尚硅谷React教程(2022加更,B站超火react教程)学习笔记 CYQ.Data的XML操作的一些自己使用记录 ASP.NET Core EF MVC 登录验证 一步步教你用html+div+css+js基于Jquery实现一套数字华容道游戏
IIS URL Rewrite将伪静态配置文件放在web.config外部
uxinxin · 2021-10-12 · via 博客园 - uxinxin

IIS6以前采用 URL Rewite 1.1

首先搜索使用URLRewriter.dll文件引入到项目中   我用的URLRewriter.dll文件

web.config中配置

<configuration>
  <configSections>
    <section name="CustomConfiguration" type="URLRewriter.Config.UrlsSection, URLRewriter" />
  </configSections>
  <CustomConfiguration configSource="App_Data\url.xml" /><!--通过这样写把文件放在web.config外部,最好放到App_Data文件夹内,防止配置被通过URL直接访问到 -->
  <system.web>
     <!--Taurus IIS应用程序池:经典模式(下运行,开启此配置)<httpModules>     
 <add name="RewriterModule" type="URLRewriter.RewriterModule, URLRewriter"/>
    </httpModules>
-->
 </system.web>
 <!--Taurus IIS应用程序池:集成模式(下运行,开启此配置)
  <system.webServer>
    <modules>
     
 <add name="RewriterModule" type="URLRewriter.RewriterModule, URLRewriter"/>
    </modules>
  </system.webServer>
-->


</configuration>

App_Data\url.xml文件里面这样写

<CustomConfiguration>
  <urls>
      <add virtualUrl="这里写虚拟路径的正则匹配" destinationUrl="这里写实际程序中的路径"/>
<!-- 例如注意后面路径中的&符号需要转义 -->
<add virtualUrl="~/page(\d+).html" destinationUrl="~/page.aspx?ID=$1"/>
<add virtualUrl="~/page(\d+)_(\d+).html" destinationUrl="~/page.aspx?ID=$1&#038;page=$2"/>
  </urls>
</CustomConfiguration>

以上是IIS URL Rewrite 1.1的配置方法

2.0中的方式web.config里设置

<configuration>
  <system.webServer>
    <rewrite>
      <rules configSource="App_Data\url2.0.xml" />
    </rewrite>
  </system.webServer>
</configuration>

url2.0.xml里配置 具体方式可参照微软官网文档  URL Rewrite Module - Video Walkthrough | Microsoft Docs

<rules>
  <rule name="regionpage" stopProcessing="true">
    <match url="^page1-(\d+).html" />
    <action type="Rewrite" url="ok.aspx?id={R:1}" />
  </rule>
</rules>

通过本人测试,感觉如果1.0满足需求使用1.0,2.0调整还需要让应用程序池重启才能生效,不知道是个人配置问题,还是真的存在问题。