Redirección 301 con htaccess

El redireccionamiento 301 se utiliza para preservar el ranking o posicionamiento de nuestro sitio web en Google y se interpreta como que nuestro sitio web ha sido movido permanentemente a otra URL. Puede ser aplicado igualmente a páginas individuales. El código de redireccionamiento 301 se incluye en en el archivo .htaccess, alojado en el directorio raiz del sitio.  En él se incluyen instrucciones que serán ejecutadas por el servidor antes de ser entregada cualquier página del sitio. Es un texto sin formato, por lo que puede crearse con cualquier editor de texto.

1. Redirigir todo el dominio a un dominio nuevo.

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.nuevodominio.com/$1 [R=301,L]

2. Redirigir a http.dominio.com a http://www.dominio.com

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^dominio\.com$ [NC]
RewriteRule ^(.*)$ http://www.dominio.com/$1 [R=301,L]

En los sitios web en los que trabajo siempre utilizo la URL completa (http://www.dominio.com) tanto en los links externos como en los internos, evitando las llamadas sin las www.

3. Redirigir una url antigua al raiz del dominio

Por ejemplo,

De: http://www.plusman.es/producto.php5?idproduct=506&idfamily=7&idsubfamily=60
A:   http://www.plusman.es

RewriteRule ^producto\.php5$ http://www.plusman.es? [NC,L,R=301]

El símbolo de interrogación ? después del dominio elimina todas las variables de la antigua cadena en la nueva.