Well, I got hacked in support in the Cacher.cs, UrlReWriteHandlerFactory, and adding in a httphandler.
It took a bit of tracking down but due to you mentioning the UrlRewrite Engine, I figured out it only matches the path, not the RawUrl. Added in || handler.IsMatch(context.Request.RawUrl to the if statement. Line 77 in the UrlReWriteHandlerFactory.cs in the GetHandler method
The Cacher was GetEntryFromRequest(CacheDuration cacheDuration, bool allowRedirectToEntryName) method and checking if there was a query string and if it was p or page_id then check if it was numeric. If so then move on with how the function worked.
The...