https://bz.apache.org/bugzilla/show_bug.cgi?id=66563

--- Comment #2 from Steven Bush <[email protected]> ---
>> There was some early discussion about allowing spaces here, but it didn't go 
>> over well.  What eventually consumes this URL? <<

The original service that caused problems for us (not the stripped down sample
that I provided) is consumed by a service that internally determines it's
output based on the origin.  In essence, three different services are handled
by a single implementation based on the origin path.  

The problem is that mod_rewrite allows server-variables (such as REQUEST_URI)
as a substitutions within the RewriteRule target URL, but those might not be
properly URL encoded, and unlike the back references, there isn't any option to
escape the characters safely. 

I was hoping I could go back to the service developer and say, "using
REQUEST_URI in this way is not supported by mod_rewrite.".  However, when I
looked at the RewriteRule documentation, I found this bit of text which
unfortunately indicates that server-variables are supported:

https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#rewriterule

>>In addition to plain text, the Substitution string can include

>>back-references ($N) to the RewriteRule pattern
>>back-references (%N) to the last matched RewriteCond pattern
>>server-variables as in rule condition test-strings (%{VARNAME})
>>mapping-function calls (${mapname:key|default})

I'll give a try to using the RewriteMap internal functions and see if that
sorts this out and I'll comment again once I have it tested.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to