zoukankan      html  css  js  c++  java
  • ASP.NET 中执行 URL 重写

    <!--
    <httpModules>
       <add type="URLRewriter.ModuleRewriter, URLRewriter" 
            name="ModuleRewriter" />
    </httpModules>
    -->
    
    <!--
    <httpHandlers>
       <add verb="*" path="*.aspx" 
            type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
    </httpHandlers>
    -->
    

    注释掉 <httpModules> 条目,以使用 HTTP 模块执行重写;注释掉 <httpHandlers> 条目,以使用 HTTP 处理程序执行重写。

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

    <RewriterConfig>
       <Rules>
       <RewriterRule>
          <LookFor>要查找的模式</LookFor>
          <SendTo>要用来替换模式的字符串</SendTo>
       </RewriterRule>
       <RewriterRule>
          <LookFor>要查找的模式</LookFor>
          <SendTo>要用来替换模式的字符串</SendTo>
       </RewriterRule>
       ...
       </Rules>
    </RewriterConfig>
    

    <RewriterConfig>
       <Rules>
             <RewriterRule>
             <LookFor>~/(\d{4})/(\d{2})/(\d{2})\.aspx</LookFor>
             <SendTo>~/ShowBlogContent.aspx?year=$1&amp;month=$2&amp;day=$3</SendTo>
          </RewriterRule>
          <RewriterRule>
             <LookFor>~/(\d{4})/(\d{2})/Default\.aspx</LookFor>
             <SendTo><![CDATA[~/ShowBlogContent.aspx?year=$1&month=$2]]></SendTo>
          </RewriterRule>
          <RewriterRule>
             <LookFor>~/(\d{4})/Default\.aspx</LookFor>
             <SendTo>~/ShowBlogContent.aspx?year=$1</SendTo>
          </RewriterRule>
       </Rules>
    </RewriterConfig>

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

  • 相关阅读:
    磊哥评测之数据库:腾讯云MongoDB vs自建
    一文看透浏览器架构
    必看!如何让你的LBS服务性能提升十倍!
    亿级曝光品牌视频的幕后设定
    Node 框架接入 ELK 实践总结
    大数据与 AI 生态中的开源技术总结
    数据库分片(Database Sharding)详解
    QQ音乐的动效歌词是如何实践的?
    Sql Server之旅——第九站 看公司这些DBA们设计的这些复合索引
    Sql Server之旅——第八站 复合索引和include索引到底有多大区别?
  • 原文地址:https://www.cnblogs.com/liyugang/p/1641810.html
Copyright © 2011-2022 走看看