For this sort of thing I place an .htaccess
file in the root of the application:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d #Optional: Only if it's not a valid directory
RewriteCond %{REQUEST_FILENAME} !-f #Only if it's not a valid file
RewriteRule (.*) index.php?q=$1 [L,QSA]
This passes in the remaining portion of the url as $_GET['q']
, and preserves any other parameters as well.
You'll need to make sure mod_rewrite
is enabled in Apache, and AllowOverride is set to all
in your sites-enabled.