Hi all. I'm encountering a problem with using mod_rewrite in httpd 2.2.9 to canonicalize the server name. The problem is that the query string seems to be double escaped by this process. Here is a sample vhost that triggers the issue:
<VirtualHost *:80>
ServerName sweetums
ServerAlias foofoo
DocumentRoot /data2/development/www/sweetums
<Directory /data2/development/www/sweetums>
Order allow,deny
Allow from all
</Directory>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^sweetums$
RewriteRule ^/(.*) http://sweetums/$1 [R=301,L,QSA]
</VirtualHost>
So, with this configuration, a request for http://foofoo/bar is
correctly rewritten to http://sweetums/bar , however a request for
http://foofoo/bar?and=grill%25 would be incorrectly rewritten to
http://sweetums/bar?and=grill%2525 .
Is there any way to prevent this behaviour, or perhaps a better form of
host canonicalization?
Cheers
Tom
signature.asc
Description: This is a digitally signed message part
