.net 实现URL重写

来源:互联网 发布:标准文摘数据库 编辑:程序博客网 时间:2024/06/08 21:38

.net 实现URL重写 实现伪静态类的简单例子

1.首先,新建一个项目,项目之中引用urlReWriter.dll


2.添加一个类:urlReWriter.cs

public class urlReWriter : URLRewriter.BaseModuleRewriter{    public urlReWriter(){}    protected override void Rewrite(string requestedPath, HttpApplication app)    {        if (requestedPath.Contains("html"))        {            string newstr = requestedPath.Replace("html", "aspx");//如果URL中有html就转换成aspx              app.Context.RewritePath(newstr);            return;        }        else        {            app.Context.RewritePath(requestedPath);            return;        }      }}
3.配置web.config文件

<system.web>结点内添加:

    <httpModules>      <add name="Url" type="urlReWriter"/>    </httpModules>

本例是简单的URL重写,name=“Url”是随便配置,name用不上的话可以随便写,type 中写的就是刚刚定义的那个类 。

到此就可以了,运行程序,把浏览器中把Default.aspx 改成 Default.html 同样可以浏览,伪静态就实现了!


PS:url重写会导致css、图片、js读不出来,需要改成绝对路径才能正常显示。


0 0