2012-05-10 48 views
3

情况如下:CMS系统(近源)不以我们想要的方式使用友好的URL。它添加了子地图和一个静态的.aspx文件,我们不这样做。例如:CMS可以识别:/public/submap/bla/page.aspx?id=CONTACT(本例中为'contact')。但是我们希望这个页面的友好URsL是这样的:/contact自定义请求以从其他URL资源获取数据

我的目标:在CMS引擎呈现页面之前,传入的请求(/联系人)将更改为CMS识别的URL(/public/submap/bla/page.aspx?id=CONTACT),但浏览器不会看不到这个。

我用HTTPModule(接口IHttpModule,事件BeginRequest)尝试了一些页面,但唯一可能的方法是将300重定向到浏览器(它将收到'/ contact'并重定向到/ public /。浏览器地址工具栏显示的../page.aspx?id=CONTACT)。

它有一种'假'的CMS引擎,将识别它自己的URL,但浏览器和ASP.NET之间的另一个URL?

环境:IIS6(Windows 2003)和.NET Framework 3.5/4.0。

+0

请发布您正在使用的.NET和IIS版本作为不同的选项可用。 –

+0

@Brian Lyttle:完成。 – robertpnl

+0

我正在尝试Server.Transfer()。看起来这是有效的。 – robertpnl

回答

0

Server.tranfer是解决方案。

+0

请标记为答案... –

+0

另一种解决方案:使用Webclient读取CMS HTML数据。在输入POST/Get,cookies和可选的发布数据之前设置。 – robertpnl