前些日子自己研究了一下Url重写,曾走入了一个误区,让我花费了很多时间,今天把这个写出来,希望能给新手们一点帮助.Url重写有好多方法,但是最常用的就是在自己写一个HttpModule或HttpHandler来实现拦截Url,实现智能纠错的功能.
其实UrlRewrite实现方法很简单,就是在配置文件中配置一个Key(正则表达式) 和Value(真正传入IIS的地址):比如在IE中输入Url,我们可以通过Request获取虚拟路径.再将所得的虚拟路径于Key匹配,获得匹配的Value,然活将Value(其中会从Url取得一些值)发送到IIS就可以实现Url重写了.
值得注意的是如果需要用"/"来重写Url,必须建立所需的文件夹,并在文件夹中建立一个Default.aspx的空文件,因为当遇到.aspx扩展名时,才会过滤从而实现重写.
具体请看:http://www.microsoft.com/china/msdn/library/webservices/asp.net/URLRewriting.mspx?mfr=true