asp.net 伪静态实现(UrlRewritingNet)

UrlRewritingNet.UrlRewriter源码地址 https://github.com/aspnetde/UrlRewritingNet 部署步骤:

步骤一:

 <!--只允许存在一个 <configSections> 元素,并且,如果存在该元素,它还必须是根 <configuration> 元素的第一个子元素-->
  <configSections>
    <!--步骤一,新静态规则应用添加-->
    <section name="urlrewritingnet" requirePermission="false" type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter" />
  </configSections>

步骤二

  <!--步骤二,静态(system.web里面)-->
    <httpModules>
      <add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
    </httpModules>

步骤三

 <!--步骤三,载入伪静态地址 任意标签后面-->
  <urlrewritingnet configSource="UrlRewrites.config"></urlrewritingnet>

步骤四

<!--步骤四,部署在IIS上需要的配置-->
  <system.webServer>
    <handlers>
      <!--一下根据.net版本选择不同的脚本 32位-->
      <add name="静态脚本20" path="*.html" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
      <add name="静态脚本40" path="*.html" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
    <!--64位-->
    <add name="net40伪静态" path="*.html" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" preCondition="classicMode,runtimeVersionv4.0,bitness64" />    
</handlers>
  </system.webServer>

这里也可以在iis里面配置
处理映射->添加脚本映射-> [请求路径: *.html 执行文件 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll ]

步骤五   伪静态统一配置地址 》》 UrlRewrites.config

<!--伪静态统一配置地址-->
<urlrewritingnet  rewriteOnlyVirtualUrls="true" contextItemsPrefix="QueryString" defaultPage = "Default.aspx" defaultProvider="RegEx" xmlns="http://www.urlrewriting.net/schemas/config/2006/07" >
  <rewrites>
    <add  name="cn_index" virtualUrl="~/b.html" destinationUrl="~/Demo.aspx" ignoreCase="true" />
    <add  name="1"  virtualUrl="~/a-(\d+)-(.*).html"  destinationUrl="~/Act.aspx?ActID=$1&Keyword=$2" />
  </rewrites>
</urlrewritingnet>

源码

Demo.zip

http://localhost:28684/b.html -->http://localhost:28684/Demo.aspx

http://localhost:28684/a-1-测试.html --> http://localhost:28684/Act.aspx?ActID=1&Keyword=测试

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏雪胖纸的玩蛇日常

老男孩Python全栈开发(92天全)视频教程 自学笔记09

1787
来自专栏蓝天

Linux下压力测试工具推荐:WebBench

由于我的VPS的服务器不是Apache,而且我也找不到ab测试工具。所以只好Google一下咯。发现一个参数少又精的压力测试工具,但是始终没有找到最新版本。只好...

652
来自专栏云计算教程系列

如何在Ubuntu 18.04上安装Django Web Framework

Django是一个功能齐全的Python Web框架,用于开发动态网站和应用程序。使用Django,您可以快速创建Python Web应用程序,并依靠该框架来完...

720
来自专栏我是攻城师

centos7安装mysql

5266
来自专栏逸鹏说道

Git的奇技淫巧?

Git是一个“分布式版本管理工具”,简单的理解版本管理工具:大家在写东西的时候都用过“回撤”这个功能,但是回撤只能回撤几步,假如想要找回我三天之前的修改,光用“...

2674
来自专栏老马寒门IT

08Vue.js快速入门-Vue综合实战项目

8.1. 前置知识学习 npm 学习 官方文档 推荐资料 npm入门 npm介绍 需要了解的知识点 package.json 文件相关配置选项 ...

2987
来自专栏生信宝典

用了Docker,妈妈再也不担心我的软件安装了 - 基础篇

Docker能做什么 The key benefit of Docker is that it allows users to package an appli...

3286
来自专栏沈唁志

网页服务器HTTP响应状态-HTTP状态码

1362
来自专栏用户2442861的专栏

linux工作中软件运行安装常见问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/d...

823
来自专栏北京马哥教育

浅谈linux用户与用户组的概念

1.用户 用户是能够获取系统资源的权限的集合. .linux用户组的分类: a.管理员 root :具有使用系统所有权限的用户,其UID 为0. ...

3056

扫码关注云+社区