UrlRewriter 是微软封装好了的一个URL重写组件。使用它可以让我节约很多自已开发的时间。
第一步,下载此组件。解压,把UrlRewriter.dll copy到你的项目 bin 目录下。 第二步,在Web.config中configSections结点后加入(注意与该节目中的原有节点保持平行):
- <!--伪静态 重新写入 config-->
- <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter"></section>
- <!--伪静态 重新写入 config-->
第二步,在</configSections>结点后加入重写的规则节点:
如: <RewriterConfig>
<Rules>
<RewriterRule>
<LookFor>~/2013(\d+)\.htm</LookFor>
<SendTo>~/newsDetail.aspx?id=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>~/index.htm</LookFor>
<SendTo>~/default.aspx</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>~/wjFind-buyers.html</LookFor>
<SendTo>~/wjBuyer.aspx</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>~/wjFind-buyers_(\d{1,6})\.html</LookFor>
<SendTo>~/wjBuyer.aspx?page=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>~/wjFind-seller.html</LookFor>
<SendTo>~/wjSale.aspx</SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>
第三步,在httpHandlers结点内加入:
<!--伪静态-->
<add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
<add verb="*" path="*.htm" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
<!--伪静态-->
完毕。如果还出错,只有一个情况了,规则写的不对。重点检查一下规则。
|