次のような .htaccess があります。
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^([^.]+)/?$ index.php?query=$1 [L]
これにより、www 以外のすべての URL が www バージョンにリダイレクトされ、最後にきちんとしたクエリ文字列が提供されることを期待していました。したがって、これらの URL:
http://site.com/index.php?query=test/page
http://www.site.com/index.php?query=another/test/page
どちらも次の場所にリダイレクトします:
http://www.site.com/test/page
http://www.site.com/another/test/page
それぞれ。
ただし、すべてが次の場所にリダイレクトされるだけです。
http://www.site.com
私は何を間違っていますか?