Un cambio de marca puede implicar un cambio de dominio que nos sumergirá en un océano de dudas y temores sobre la repercusión que tendrá este cambio sobre las visitas a nuestra web. Si echamos un ojo al método oficial que recomienda google en estos casos, o incluso el método no oficial de Matt Cutts, comprobaremos que el número 301 parece ser la solución a todos nuestros males.
He de reconocer que yo mismo he tenido que pasar por la experiencia de cambiar el nombre de dominio de mi web y les puedo asegurar que si no queremos acabar al borde de un ataque de nervios es muy recomendable tener muy claro cuándo abordar este proyecto, cómo abordarlo y sobre todo tener claro cuánto tiempo puede llevarnos volver a tener nuestro número habitual de visitantes. En este artículo les mostraré de manera sencilla la mejor estrategia para que este vía crucis sea lo más corto posible.
El Pagerank se asocia a un domino de manera global y a cada una de las páginas que conforman el site de manera particular.
Antes de comenzar es importante identificar qué páginas su Site son las que reciben el mayor número de visitas y realizar su redireccionamiento de manera especialmente minuciosa. Tenga en cuenta que por norma general el 20% de las páginas de un Site generan el 80% de las visitas del mismo:
site:www.miweb.com site:www.miweb.com) http://siteexplorer.search.yahoo.com/
linkdomain:www.miweb.comTenga presente que la transferencia de pagerank no es inmediata.
El pagerank real y el pagerank visible en la barra de google no coinciden en número ni se actualizan el mismo tiempo.
Tan importante como no perder pagerank, es no perder presencia en buscadores, ni backlinks.
La comunicación entre un agente (un navegador, Google, etc) y un servidor web se realiza a través de peticiones y respuestas HTTP. Cuando un agente solicita un recurso que ya no se encuentra en la url solicitada, el servidor responde con una cabecera http de redirección 301:
Por ejemplo, cuando un visitante accede a nuestra web antigua el funcionamiento de una redirección 301 es el siguiente:
GET /index.php http/1.1
Host: www.olddomain.com 301 Moved Permanently
Location: http://www.newdomain.com/index.php En el caso de que sea la araña de Google la que accede a nuestra antigua web, el funcionamiento de la redirección es similar:
GET /index.php http/1.1
Host: www.olddomain.com 301 Moved Permanently
Location: http://www.newdomain.com/index.php Nota: Puede ver todos los detalles sobre la naturaleza de las cabeceras http en la definición del protocolo HTTP/1.1.
También puede conocer como reacciona GoogleBot en función del código de respuesta que encuentre.
No existe una única forma de realizar redirecciones, por un lado podemos asignar redirecciones HTTP configurando nuestro servidor web, también podemos incluir en la página a redireccionar scripting de servidor (PHP, ASP, Perl, etc), incluso podemos realizar redirecciones con scripting de cliente (JavaScrpt, Meta Refresh, etc), aunque estas últimas están totalmente desaconsejadas en este caso ya que no son transparentes para los visitantes y su utilización puede conllevar penalizaciones en el posicionamiento del Site.
La elección de un método u otro la debe de tomar usted en función de sus necesidades, vamos a ver unos cuántos ejemplos de implementación:
I. Realizar la redirección en los archivos de configuración del servidor
Para poder indicar la redirección en los archivos de configuración debe de tener acceso al archivo httpd.conf de su servidor Apache. A continuación le muestro a modo de ejemplo el código necesario para redireccionar todas las urls de olddomain.com a newdomain.com:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^olddomain\.com [NC]
RewriteRule (.*) http://newdomain.com/$1 [R=301,L]
II. Redirección de directorios y ficheros con .htaccess
La forma más sencilla de redireccionar una página estática a una dirección es a través de la directiva de redirección de Apache. La redirección debe indicarse dentro un un archivo .htaccess ubicado en el raíz o en el directorio sobre el que se quiera aplicar. Tenga en cuenta que la redirección se aplicará también a todos los directorios que cuelguen de este.
Por ejemplo si quisiéremos redirigir todas las páginas que cuelguen de la carpeta /catálogo debería incluir en este directorio un archivo .htacces con la siguiente información:
Redirect 301 /catalogo http://newdomain.com/catalogo
También es posible establecer redirecciones con expresiones regulares y RedirectMatch. Por ejemplo podríamos redirigir los archivos .gif de oldomaian.com a sus homónimos en .jpg de newdoamin.com con la siguiente expresión:
RedirectMatch 301 (.*)\.gif$ http://www.newdomain.com$1.jpg
III. Redirección en código de servidor
Otra forma de establecer una redirección es indicarla de manera programática con código servidor, la sintaxis varía en función del lenguaje:
<? header("HTTP/1.1 301 Moved Permanently", TRUE, 301);
@header("Location: http://newdomain.com/");
?>
<CFHEADER statuscode="301" statustext="Moved Permanently">
<CFHEADER name="Location" value="http://newdomain.com/"> #!/usr/bin/perl -w
use strict;
print "Status: 301 Moved Permanently\r\n", "Location: http://newdomain.com/\r\n\r\n";
exit;<% Response.Buffer = TRUE;
Response.Status = "301 Moved Permanently"
Response.AddHeader "Location", "http://www.newdomain.com/"
Response.End %><script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.newdomain.com/");
}</script> <%
response.setStatus(301);
response.setHeader( "Location", "http://www.newdomain.com/" );
response.setHeader( "Connection", "close" );
%>def old_action
headers["Status"] = "301 Moved Permanently"
redirect_to "http://www.newdomain.com/"
end IV. Redirecciones en IIS
Si su servidor web es un IIS puede seguir las siguientes indicaciones para hacer una redirección 301:
La estrategia a seguir es relativamente sencilla: cada url del antiguo dominio se debe redireccionar a la url correspondiente del nuevo dominio:
Si la redirección se ha hecho con éxito no se debe experimentar ninguna pérdida de visitas:
Si hemos dado de alta correctamente el Site Map para el nuevo dominio en 2 o 3 semanas deberemos ver como se actualiza el índice de Google para mostrar los resultados con el nuevo nombre de dominio.
El PageRank público mostrado en la barra de Google puede tardar varios meses en actualizarse con el valor original del antiguo dominio. Esto no debe obsesionarnos pues no tiene una repercusión negativa en el posicionamiento.
Mantenga los Google Site Maps del Site antiguo y nuevo, y revise de manera periódica los errores de indexación(crawl errors) para asegurarse que las redirecciones están funcionando correctamente y que no existen errores del tipo 404 (Documento no encontrado).
En el blog oficial de Google se recomienda mantener el contenido del antiguo Site durante al menos 180 días una vez hecha la redirección. Si no queremos perder los backlinks deberemos mantener el antiguo contenido de manera indefinida o solicitar uno a uno a todos los Sites implicados que actualicen sus enlaces para apuntar a la nueva dirección.
Las redirecciones deben ser tratadas con especial cuidado, tenga en cuenta que algunos webmasters las han utilizado para intentar modificar de manera fraudulenta los rankings de Google en su propio beneficio, puede leer más acerca de esta práctica en el artículo 302 page Hijack.
Artículos relacionados:
“Si la estructura de directorios se mantiene idéntica en el nuevo dominio con una sóla regla es suficiente.”
Qual sería esta regla, necesito hacer justo eso en un dominio personal, peor no me aclaro… sólo me redirecciona la página principal, no incluye los subdominios
Gracias
Perdón me refería a las carpetas, subfolders, no subdominios.
Gracias
Hola, si tienes acceso a tu httpd.conf la regla sería como esta:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^olddomain\.com [NC]
RewriteRule (.*) h t t p://newdomain.com/$1 [R=301,L]
Si además quieres redirigir también subdominios tendrías que utilizar esta regla:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.]+\.)?olddomain\.com [NC]
RewriteRule ^/(.*)$ h t t p://%1newdomain.com/$1 [R=301,L]
Si lo haces a través de un archivo .htaccess en el raíz:
RedirectMatch 301 ^(.*)$ h t t p://www.newdomain.com$1
Con .htaccess no puedes redireccionar subdominios.
Ojo que los http tienen que ir sin espacios!
Suerte.
Me ha ido perfecto! Muchas gracias por la rapidez de la respuesta y enhorabuena por el blog
Me alegra que te funcionara, un saludo.
Hola, como estas, tu pagina es excelente, si queres pasate por mi pagina y dejame un comentario, tengo mucho trafico en mi sitio, si te interesa podemos hacer un intercambio de links, banners, cualquier cosa avisame, te dejo mi email tvinternet08@gmail.com, te mando un abrazo.
Hola,
Tengo una duda de mi caso en especial:
tengo un dominio que no quiero migrar y un subdominio de ese que si quiero migrar a un dominio, es decir, tengo:
http://www.midominio.com
sub.midominio.com
pues quiero mantener el http://www.midominio.com tal cual está pero migrar el sub.midominio.com a http://www.otrodiminio.com
como lo haría para no afectar al primero? tengo acceso a la configuración de apache.
Gracias.
Hola, puedes direccionar un subdomino a otro dominio sin problema, siempre y cuando no lo hagas de manera abusiva o con fines descaradamente orientados a posicionar tu web. El pagerank de tu dominio original no se verá afectado negativamente.
[…] En Hello Google, Ignacio (Iñaki para los amigos), explica Cómo cambiar de nombre de dominio sin perder PageRank ni posicionamiento con la Redirección 301. […]
Muy bién, me parece excelente esta información en especial las redirecciones permanentes en IIS.
gracias!
yo opte por quitar las redirecciones de mi web porque me era imposible optimizar con la 301.no me pregunten porque pero quitando las redirecciones pude optmizarlo a tope!
Espero no tener que cambiarlo nunca, la verdad…