having + sign rewrite problem

Topics: User Forum
Mar 16, 2007 at 5:32 PM
Edited Mar 17, 2007 at 3:11 AM

I'm having problems matching a + sign in part of an url.
This expression seems to match everything except + and /


I'm trying to match something like:


It matches /subdir/mynameisfred/1234 but as soon as I add a + sign, there is no match.

I'm using IIS 7 on Vista.

The resulting page is giving me an error:
The request filtering module is configured to deny a request that contains a double escape sequence.

Most likely causes:
The request contained a double escape sequence and request filtering is configured on the Web server to deny double escape sequences.

What you can try:
Verify the configuration/system.webServer/security/requestFiltering@allowDoubleEscaping setting in the applicationhost.config or web.confg file.

More Information...
This is a security feature. Do not change this feature unless the scope of the change is fully understood. You should take a network trace before changing this value to confirm that the request is not malicious. If double escape sequences are allowed by the server, modify the configuration/system.webServer/security/requestFiltering@allowDoubleEscaping setting. This could be caused by a malformed URL sent to the server by a malicious user.

I've also set up a test dir for TestDriver with an ini RewriteRule:
RewriteRule ^/subdir/([^/]+)/([\d]+) /mydir/mypage?id=$2

and SampleUrls

It finds and rewrites the first rule fine, but on the second, the program crashes.

Fri Mar 16 16:23:35 2007 - ApplyRules (depth=0)
Fri Mar 16 16:23:35 2007 - Rule 1 : 3 matches
Fri Mar 16 16:23:35 2007 - Result (length 21): /mydir/mypage?id=1234
Fri Mar 16 16:23:35 2007 - ApplyRules (depth=1)
Fri Mar 16 16:23:35 2007 - Rule 1 : -1 (No match)
Fri Mar 16 16:23:35 2007 - ApplyRules: returning 0
Fri Mar 16 16:23:35 2007 - ApplyRules: returning 1

REWRITE '/subdir/mynameisfred/1234' ==> '/mydir/mypage?id=1234'


I guess it's a Vista/IIS7 thing - just hoping that there may be a workaround.

Thanks in advance