How to get original url after HttpContext.RewritePath() has been called

jessegavin picture jessegavin · Mar 11, 2010 · Viewed 8.9k times · Source

I am working on a web app which makes use of a 3rd party HttpModule that performs url rewriting.

I want to know if there's any way to determine the original url later on in Application_BeginRequest event. For example...

Original url:
http://domain.com/products/cool-hat.aspx

Re-written url (from 3rd party httpmodule):
http://domain.com/products.aspx?productId=123

In the past I have written HttpModules that store the original url in HttpContext.Items but, this is a 3rd party app and I have no way of doing that.

Any ideas would be appreciated.

Answer

Colin Breame picture Colin Breame · May 21, 2011

Try this:

string originalUrl = HttpContext.Current.Request.RawUrl;

The original URL is inside of this property.