2012-08-07 68 views
0

我试图建立使用Microsoft IIS URL重写2.0的URL重写规则,我运行IIS7和.NET 4微软的IIS URL重写2.0 - 重写URL以文件夹的x个

我想匹配的任何数量的特定图案的,例如:

www.test.com/test1/ 
www.test.com/test1/test2/ 
www.test.com/test1/test2/test3/ 
www.test.com/test1/test2/test3/test4/ etc... 

和[分别]重写结果作为

www.test.com/page.aspx?q=test1 
www.test.com/page.aspx?q=test1&q=test2 
www.test.com/page.aspx?q=test1&q=test2&q=test3 
www.test.com/page.aspx?q=test1&q=test2&q=test3&q=test4 etc... 

www.test.com/page.aspx?q=test1 
www.test.com/page.aspx?q=test1,test2 
www.test.com/page.aspx?q=test1,test2,test3 
www.test.com/page.aspx?q=test1,test2,test3,test4 

这是一个相当直接的事情,当使用标准的c#正则表达式引擎(我曾考虑创建一个自定义的HttpModule来处理这个并迭代Match集合),但是我想知道是否有可能使用IIS url重写组件,因为我非常高兴地使用这个网站的其他部分。

任何想法?

回答

1

你为什么不只是比赛和传递

www.test.com/page.aspx?q=test1/test2/test3/test4 

那么这将是高达page.aspx怎么需要它来解析呢?这样,当它真的是应用程序逻辑时,你的配置不会改变。

+0

这不是一个半坏主意,但是这将与现有的重写规则发生冲突,迫使我实现处理器/模块重写基于另一种逻辑条件的请求。 – 2012-08-07 15:41:21