Morning,
I am trying to make my URLs more search engine friendly and I have come
up against a problem.
I want the following URL:
mysite.example.com/articles/Test Story
to be proxied to
mysite.example.com/index.php?m=articles&t=Test%20Story
I have the following rule in my Apache conf
RewriteRule ^/articles/(.*) index.php?m=articles&t=$1 [P,L]
Now if I run with this configuration, PHP strips the query string back
at the space, so my query string ends up looking like
[QUERY_STRING] => m=articles&t=Test
even though the log file for the rewrite shows that the full query is being passed.
But if I change the RewriteRule to be a Rewrite instead of a Proxy I get
[QUERY_STRING] => m=articles&t=Test%20Story
So something is happening when the system is proxying the request.
Adding %20 into the URL does not fix the problem when proxy is enabled either.
I have search around on the Internet, and people talk about using urlencode etc, this is fine when
PHP is creating the URL but not when Apache is doing the rewrite.
I apologise if people feel this is on the wrong list, but as far as I can tell from the rewrite logs the data is coming all
the way through to PHP which is truncating it. This is purely my observation.
Apache version: 2.2.11
PHP Version: 5.3.0
Any help is gratefully recieved.
Thanks, Russell