Tom Evans wrote:
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
Try removing the QSA flag from the RewriteRule. It should only be needed
when you are modifying the query string (which you are not).
--
Justin Pasher
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [EMAIL PROTECTED]
" from the digest: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]