• UrlRewriter实现.NET的URL重写


    首先下载安装MSDNURLRewriting.msi,链接地址http://pan.baidu.com/s/1c0pRnTu。

    在安装目录下找到RewriterTesterinURLRewriter.dll添加引用到自己的项目。

    更改配置文件web.config,在<configuration> </configuration>结点之内, <system.web> </system.web>节点之前,添加如下节点:

     <RewriterConfig>
        <Rules>
          <RewriterRule>       // 伪装的URL,可以将html更改成任意的,如:jsp,php,asp,aspx等
            <LookFor>~/news(.+).html</LookFor>        // 实际的URL,$1表示第1个正则表达式(.+)所表示的参数,以此类推,$n表示第n个正则表达式表示的参数
            <SendTo>~/WebForm1.aspx?id=$1</SendTo>      <RewriterRule> 
          </RewriterRule>
            <LookFor>~/new/(.+)/(.+).aspx</LookFor>
            <SendTo>~/WebForm1.aspx?id=$1&amp;keyword=$2</SendTo>
          </RewriterRule>
        </Rules>
      </RewriterConfig>

    在<system.web></system.web>节点之内添加:

    <httpHandlers>
          <add verb="*" path="*.html"
                type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
          <add verb="*" path="*.aspx"
                type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
     </httpHandlers>
    前台的HTML代码可以写为:

    <a href="/news11101.html">真实地址:WebForm1.aspx?id=11101</a>
    <a href="/new/909990/abcd.aspx">真实地址:WebForm1.aspx?id=909990&keyword=abcd</a>
    // 甚至可以写成这样:
    <a href='/news<%#DataBinder.Eval(Container.DataItem,"ID") %>.html'>真实地址:WebForm1.aspx?id=<%#DataBinder.Eval(Container.DataItem,"ID") %></a>
     
     
  • 相关阅读:
    提高PHP程序运行效率的方法
    必须知道的sql编写技巧。多条件查询不拼接字符串·的写法
    数据库SQL优化大总结之 百万级数据库优化方案
    编程一开始就应该养成的好习惯
    php图像处理
    jqurey 简单的,我也简单
    菜单上下级 (全国地区)
    think php v5.0
    正则表达式
    有感赠朵朵
  • 原文地址:https://www.cnblogs.com/ianunspace/p/4418563.html
Copyright © 2020-2023  润新知