httpd-bugs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 45529] B flag in mod_rewrite RewriteRule doesn't escape & and other sim characters
Date Wed, 17 Sep 2008 10:29:33 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=45529





--- Comment #6 from Samuel Williams <samuel.williams@oriontransfer.co.nz>  2008-09-17
03:29:33 PST ---
I've solved this for my very specific case:

        RewriteEngine on
        RewriteCond %{THE_REQUEST} ^.*?\/(.*\.git)\/web\/(.*)\s+HTTP.*$
        RewriteRule ^.*$ /git.rhtml?r=%1&p=%2 [L]

What I expected to be able to write is:

        RewriteEngine on
        RewriteRule ^(.*\.git)\/web\/(.*)$ /git.rhtml?r=$1&p=$2 [B]

But this doesn't seem to work. I've noticed that when requesting 

http://git.oriontransfer.org/Scripting/XcodeUserScripts.git/web/Menu/Code/C%2B%2B/20-Unique+Header.rb

It is logged as:

10.0.0.128 - - [17/Sep/2008:22:22:47 +1200]
[git.oriontransfer.org/sid#b818eb00][rid#b83cf178/initial] (2) init rewrite
engine with requested uri
/Scripting/XcodeUserScripts.git/web/Menu/Code/C++/10-CPP+Class+Members.rb


"C++" is not escaped as "C%2B%2B" as it is passed from the original query. I'm
not sure how Apache is handling this internally, but I would have expected to
see:

init rewrite engine with requested uri
/Scripting/XcodeUserScripts.git/web/Menu/Code/C%2B%2B/10-CPP+Class+Members.rb

i.e. something before mod_rewrite is un-escaping the URL before it gets to
mod-rewrite. This might be why the [B] flag appears to have no effect.

Kind regards,
Samul


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


Mime
View raw message