URLRewriter重写 去除文件扩展示名方法

作者:袖梨 2022-06-25

http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/msdnurlrewriting.msi
这里包含着urlrewriter和actionlessform,如果有必要,可以进行重写,编译后将.dll引入到项目中.

我先对webconfig进行配制.web.config 文件中指明要使用 http 模块还是 http 处理程序来执行 url 重写。这里使用了http 模块进行处理


   




   

若使用http 处理程序,则在httphandlers中进行配制

           type="urlrewriter.rewriterfactoryhandler, urlrewriter" />

除了指定使用 http 模块还是 http 处理程序执行重写外,web.config 文件还包含重写规则:重写规则由两个字符串组成:要在被请求的 url 中查找的模式;要替换此模式的字符串(如果找到)。在 web.config 文件中,此信息是使用以下语法表达的:


  
  
      要查找的模式
      要用来替换模式的字符串
  

  
      要查找的模式
      要用来替换模式的字符串
  

   ...
  


每个重写规则均由 元素表达。要搜索的模式由 元素指定,而要替换所找到的模式的字符串将在 元素中输入。这些重写规则将从头到尾进行计算。如果发现与某个规则匹配,url 将被重写,并且对重写规则的搜索将会终止。

元素中指定模式时,请注意,要使用正则表达式来执行匹配和字符串替换。由于模式是正则表达式,应确保转义正则表达式中的任何保留字符。(一些正则表达式保留字符包括:.、?、^、$ 及其他。可以通过在前面加反斜杠(如 .)对这些字符进行转义,以匹配文字句点。)

在configuration下加入一结点


         
     
        ~/(d{4})/(d{2})/(d{2}).aspx
        ~/showblogcontent.aspx?year=$1&month=$2&day=$3
     

     
        ~/(d{4})/(d{2})/default.aspx
       
     

     
        ~/(d{4})/default.aspx
        ~/showblogcontent.aspx?year=$1
     

     
        ~/modalpopupextender
        ~/modalpopupextender.aspx
     

   

 此时输入modalpopupextender时,就导向了modalpopupextender.aspx页面

相关文章

精彩推荐