在asp.net Web表单中重写URL(有一些复杂情况)

时间:2009-06-09 11:41:40

标签: webforms url-rewriting

在URL重写方面,目前有一些替代方案,如IIS7模块或Urlrewriter.NET。但是,据我所知,这两个基于通配符,我很遗憾不能使用它。

我的问题是我正在使用的数据没有真正的结构。一个例子:

Something.aspx?page = 4可能是/ Weapons / Flails / Something.aspx = page = 5可能是/ Clothes / Dresses / Blue /

即。页面ID与它指向的页面之间没有明确的匹配。我想这需要在db中进行某种查找(slugs?)。

我如何以最简单的方式实现这一点?现有的替代方案是否提供了解决方案,还是我必须构建自己的模块?

谢谢。

2 个答案:

答案 0 :(得分:0)

IIS7有一个正则表达式选项,而不仅仅是外卡,它还有重写映射。我认为这就是你要找的东西,它可能是你的查找表。

设置重写规则时,使用下拉列表查找regEx选项。 同样,当您创建规则时,地图的选项就在那里。

答案 1 :(得分:0)

您也可以使用Managed Fusion URL Rewriter and Reverse Proxy。它支持配置重写的Apache mod_rewrite sytnax。您可以使用我博客中描述的这种方法创建一个模块,该模块可以对这些旧ID进行数据库查找,并将它们重定向到正确的位置。

http://www.coderjournal.com/2008/12/creating-extension-module-net-url-rewriter-reverse-proxy/

如果您希望帮助设置此类重写,请通过我的博客与我联系。