views:

229

answers:

1

Hi everyone, I've got a project where we're re-building a site for a client, the new site is using umbraco on the .net platform. the old site was cold fusion.

Umbraco utilises the urlrewriting.net library so I created all the 301 recirect rules for the old cold fusions urls but this one is causing an infinite loop.

    <add name="r66" virtualUrl="^~/thing_info/index.cfm.D413249D-BCD8-304B-02CD-561DAC70641E$"
                destinationUrl="~/about-us/award-winning-product" redirect="Application" redirectMode="Permanent" ignoreCase="true" />

I know "." has a special meaning but it works well enough, also I've used "." to match any character including the "?" character beginning the query string. if I visit try the url without a querystring like so

http://staging.site/thing_info/index.cfm-D413249D-BCD8-304B-02CD-561DAC70641E

then I get redirected correctly to

http://staging.site/about-us/award-winning-product

However if I try the url (question mark is the only difference)

http://staging.site/thing_info/index.cfm?D413249D-BCD8-304B-02CD-561DAC70641E

Then I end up in a redirect loop to itself. (I checked the response header)

Does anyone have any idea if I've done something wrong or if it's a bug in the urlrewriting.net library? or how to correct the problem?

A: 

Its a regular expression so the . means any character. You could try escaping the dot with . or the question with \? to match that character specifically.

BeaverProj
I don't think so, I have a sentence covering this scenario in the question.
Myster