ASP.NET 中执行 URL 重写

it2022-05-05  158

<!-- <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&month=$2&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 将被重写,并且对重写规则的搜索将会终止。

转载于:https://www.cnblogs.com/liyugang/archive/2010/01/07/1641810.html

相关资源:各显卡算力对照表!

最新回复(0)