ASP.NET URLRewriting解决方案资料集
看看都有什么解决方案
参考文档:
- Tip/Trick: Url Rewriting with ASP.NET by Scott Guthrie - 讨论了四种解决方法
- 使用Request.PathInfo 参数而不是QueryStrings
- 使用一个 HttpModule 来实现 URL Rewriting;
- 在IIS 7 上使用 HttpModule 来实现 Extension-Less URL Rewriting
- 在IIS 5和IIS 6 上使用 ISAPIRewrite 来实现 Extension-less URL Rewriting
- 同时讨论了实现URL Rewriting是如何处理ASP.NET postback
- URL Rewriting by Salman (CSharpFriends) - 一个简单的URL Rewriting的实现方案,通过改写Global.asax 中的Application_BeginRequest() 方法。
- Search Engine Friendly URLs using ASP.NET (C#.NET) by Maziar Aflatoun (The UK Web Design Company) - 跟上面的差不过,不过使用了正则表达式来匹配URL
- Rewrite.NET - A URL Rewriting Engine for .NET by Robert Chartier (15Seconds.com). 实现的步骤是:
- 创建一个HttpModue用来处理web request和实现URL Rewriting
- 在Web.config中增加一个handler
- 在web.config中增加一节来处理URL 映射规则
- 定义一套URL映射规则的添加规范
- 写一个类或者一些类来操作这个URL映射规则的添加规范,这样便于用户使用
- 在HttpModule中添加代码用来动态加载web.config中需要使用的映射规则
- URL Rewriting in ASP.NET by Scott Mitchell (MSDN) - 讨论了如何用HTTP module实现URL Rewriting,同时也解释了如何处理postback。
- URL Rewriting with ASP.NET by Richard Birkby (CodeProject) - 展示了一个传统的ASP网站如何升级到ASP.ENT,在升级的同时保留之前的页面链接,步骤如下:
- 在web.config中创建一节用来定义URL映射规则
- 根据URL Rewriting的逻辑,编写处理这一节配置的类。
- 处理Global.asax 中的Application_BeginRequest() 方法
- 编译这个代码,并把编译的DLL文件安装到Global Assembly Cache (GAC)
- 配置IIS 把.aspx文件映射到ASP.NET ISAPI extension
Url Rewriting using IHttpModule vs ISAPI Rewrite
其它相关资源:
- Making Sense of ASP.NET Paths by Rick Strahl
- Fixing Microsoft's Bugs: URL Rewriting by Jesse Ezell
- Regular Expressions with .NET by Dan Appleman and Daniel Appleman
- UrlRewritingNet.UrlRewrite - an Open Source Component which allows you certainly to rewrite URLs with ASP.NET 2.0.
- Open Source URL Rewriter for .NET / IIS / ASP.NET