htaccess 301 redirecciona para URL con parámetro

Tengo lo siguiente en mi archivo htaccess, que toma una URL como: www.example.com/Page.php?id=About y la convierte en www.example.com/about. El único problema es que las URL antiguas no están redirigiendo a las nuevas URL cuando configuro Redirect 301s en el htaccess (lo que entiendo es que no se deben pasar parámetros en Redirect 301s básico – ejemplo de Redirect básico que ‘ He intentado a continuación).

Redirect 301 /Page.php?id=About http://www.example.com/about 

El problema es que las nuevas URL no necesariamente eliminan la identificación actual y la reemplazan con una versión en minúscula. Por ejemplo, también me gustaría:

 Redirect 301 /Page.php?id=Example http://www.example.com/example-page 

Quiero mantener la funcionalidad actual de volver a escribir las URL, pero también quiero que cualquier visita a las URL antiguas redirija a las nuevas (es decir, para actualizar el índice de Google). Visitar www.example.com/Page.php?id=Acerca de este momento todavía funciona pero muestra una página sin contenido.

 Options +FollowSymLinks RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([a-zA-Z0-9\-]+)/?$ Page.php?id=$1 RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ Page.php?id=$1&tab=$2 RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ Page.php?id=$1&tab=$2&tabid=$3 

Si agrega esta regla a su .htaccess, debería hacer el trabajo de la Redirección. Agregará el? Id = Acerca de la redirección a / sobre. Si está ejecutando la versión 2.4.0 o posterior, puede agregar el indicador QSD para descartar la cadena de consulta en la redirección.

 RewriteCond %{QUERY_STRING} ^id=About$ RewriteRule ^page.php /about [NC,R,L]