Manchmal steht man vor dem Problem, dass eine Website auf ein neues oder anderes Content Management System (z.B. Joomla! oder WordPress) umgestellt wird, man aber die alten URLs per Redirect auf die neuen umleiten möchte, z.B. um weiterhin per Google gefunden zu werden.
Intuitiv würde man dann Rewrite-Regeln wie die folgenden schreiben:
RewriteRule ^start/$ /start.html [R=301,L] RewriteRule ^index.php?page=imprint$ /imprint.html [R=301,L]
Die erste Regel funktioniert auch problemlos, die zweite allerdings nicht, weil die Parameter eines Requests nicht an der Stelle mit ausgewertet werden. Daher muss man anstelle dieser Regel mit einer Bedingung vorweg arbeiten:
RewriteCond %{QUERY_STRING} ^page=imprint$ RewriteRule ^index.php$ /imprint.html? [R=301,L]