Suponemos que nuestra web se encuentra alojada en un servidor con apache y con el mod-rewrite activo, y que por tanto podemos editar el fichero .htaccess que se encuentra en la raíz de nuestra web.
Lo primero es añadir la siguiente línea a nuestro .htaccess, para activar el motor de reescritura de direcciones:
RewriteEngine OnAhora vamos a ir explicando cada caso particular con ejemplos, donde nuestro dominio principal sera “midominio.com”. Por ejemplo si lo que queremos es que cualquier persona que teclee nuestro dominio sin la triple w (como midominio.com), le aparezca automáticamente la dirección con las tres w (www.midominio.com), debemos hacer lo siguiente:
RewriteCond %{HTTP_HOST} ^midominio.com$ [NC] RewriteRule ^(.*)$ http://www.midominio.com/ [R=301,L]De esta forma indicamos una condición con la sentencia RewriteCond, para que cuando el dominio recibido, indicado por la variable de servidor HTTP_HOST, se corresponda con midominio.com, siendo la comprobación insensitiva, es decir ignorando mayúsculas o minúsculas, entonces se ejecute las reglas siguientes indicadas por sentencias RewriteRule. Es decir, cuando se cumple una condición se ejecutan todas las reglan que la preceden hasta encontrar una regla que lleve el flag L, el cuál indica que es la última regla. En nuestro caso solo necesitamos una regla, por ello le incluimos el flag L, y lo que hace dicha regla es cambiar la dirección recibida por http://www.midominio.com, con una redirección de tipo 301.
Optamos por una redirección 301, puesto que es la forma más eficiente de indicar a los motores de busqueda que la ruta especificada ha sido movida de forma permanente. Sin que dicha redirección afecte a los rankins de nuestra página, por tanto se realiza de forma transparente.
Ahora para lograr redireccionar cualquier dominio a nuestro dominio principal (en este caso el .com), hacemos lo siguiente (suponiendo que tenemos registrados el .es y .net también):
RewriteCond %{HTTP_HOST} ^www.midominio.es$ [NC] RewriteRule ^(.*)$ http://www.midominio.com/ [R=301,L] RewriteCond %{HTTP_HOST} ^midominio.es$ [NC] RewriteRule ^(.*)$ http://www.midominio.com/ [R=301,L] RewriteCond %{HTTP_HOST} ^www.midominio.net$ [NC] RewriteRule ^(.*)$ http://www.midominio.com/ [R=301,L] RewriteCond %{HTTP_HOST} ^midominio.net$ [NC] RewriteRule ^(.*)$ http://www.midominio.com/ [R=301,L]Siendo las 4 primeras líneas para el dominio .es, y las últimas 4 para el dominio .net. Las 2 primeras de la parte del dominio.es se encargan del dominio con la triple w, y las dos siguiente del dominio sin la triple w.
Finalmente si lo que queremos es redireccionar una página antigua a una nueva, lo que tenemos que hacer es:
redirect 301 /antiguo/antiguo.html http://www.midominio.com/nuevo.htmlDe esta forma cuando se intente acceder a dicha página antigua se redireccionará automáticamente a la nueva página, y sin afectar al ranking que tuviera para los buscadores.
Comentarios