Htaccess Querystring rewrite

By : Martin
Source: Stackoverflow.com
Question!

I have URLs like /?test that I want to rewrite to /page.php?page=test

I tried like this but for some reason it doesn't work.

RewriteRule ^\?([a-z0-9\-\+]{3,20})/?$ /page.php?page=$1 [NC,QSA]

What am I doing wrong?

By : Martin


Answers

The query string can only be tested with the RewriteCond directive. The RewriteRule pattern is only tested against the URL path (in .htaccess files the URL path without the per-directory prefix).

So try this:

RewriteCond %{QUERY_STRING} ^[a-z0-9- ]{3,20}$ [NC]
RewriteRule ^$ /page.php?page=%0 [QSA]
By : Gumbo


This video can help you solving your question :)
By: admin