Redirección 301: Cómo hacer una redirección sin ser penalizado.

Las redirecciones 301 sirven para, en caso de cambiar de URL, se pueda acceder a ella desde el enlace anterior. Suele ser muy útil cuando se consiguen enlaces desde otras páginas, y por algún motivo es necesario cambiar esta dirección.

No solo eso, además sirve en caso de querer cambiar de dominio, o bien de las ya comentadas URL Canónicas.

Como podemos ver, los usos de las redirecciones 301 son varios y tienen una gran implicación en SEO. No es aconsejable usar nunca redirecciones mediante javascript o la metaetiqueta Refresh, con esto lo único que conseguiremos es una penalización por parte de los buscadores ya que estas redirecciones se usan con motivos de técnicas black hat SEO.

Hay varias formas de realizar una redirección 301, por ejemplo, tenemos el caso de la programación.

En el caso de la redirección 301 en PHP, sería así:

<?
Header( “HTTP/1.1 301 Moved Permanently” );
Header( “Location: http://www.nueva-direccion.com” );
?>

Si por el contrario es la redirección 301 en ASP, sería así:

<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “http://www.nueva-direccion.com”
%>

En una redirección 301 hay que tener en cuenta que por una parte no se pierden los backlinks, ya que al acceder al enlace antiguo, irán a parar a la nueva URL. Y que se pasa el PageRank, aunque este no es visible hasta la próxima actualización de PageRank.

Sobre las redirecciones 301, hay gente que dice que si pasa el anchor text, hay quienes dicen que no pasa el anchor text. Habría que matizar en todo esto. Hay quien registra un dominio con facilidad para posicionarse con una keyword y posteriormente conseguir enlaces para luego hacer una redirección 301 e intentar pasarle ese anchor text. Es decir, comprar un dominio y hacer una redirección 301, no pasa anchor text ya que se puede considerar un intento de técnica black hat. Sin embargo si tenemos en un mismo dominio una redirección 301 por un cambio de URL, en tal caso si que pasa el anchor text, ya que se trata de un cambio estructural interno de la web y por lo tanto no se está intentando “engañar” al buscador.

Por último, me gustaría comentar la forma más correcta de hacer una redirección 301, y es mediante el uso del .htaccess. Esto es un archivo interno del servidor que le dice a este como debe de trabajar en según que situaciones.

Un ejemplo de archivo .htacces sería:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^tusitio.com [NC]
RewriteRule ^(.*)$ http://www.tusitio.com/$1 [L,R=301]

Como se puede apreciar, es una condición genérica que siempre que se cumpla, se aplicará la redirección. De esta forma evitas tener que crear un archivo para cada una de las URL y tener que ocupar tanto espacio. Es mucho más fácil editar un archivo que cientos de ellos en caso que sea un proyecto muy grande.

Be Sociable, Share!

    Puedes seguir las respuestas de este blog dandote de alta en RSS 2.0 feed. Puedes dejar una respuesta, o enlazar desde tu sitio web.

    20 comentarios »

     
    • pablowp says:

      Muy bueno, gracias aplicare eso en mi web

    • Bienvenido, espero que este tutorial seo te sirva de ayuda. Si tienes alguna duda, pasate por aquí a ver si podemos echarte una mano 🙂

      Saludos.

    • sorin says:

      Si el servidor contaba con soporte para lenguajes como ASP, CGI o PHP esto era muy fácil, ¿pero para aquellos que no lo tienen?

      Que me aconsejas “BlogTecnologico”

    • Bueno, digamos que el servidor web o corre como Apache ( bajo linux ) o bien usa el ISS ( Windows ).
      El caso es que si es linux, normalmente tiene soporte php, y deberia tener el acceso al .htaccess.
      En caso que sea el ISS el que corra el servidor web, debemos usar “isapi rewrite” para lograr esto. ( sería la variante al .htaccess )

      Si por el contrario, no tenemos nada de esto ( que ya es extraño )… poco podemos hacer… 😛

    • sorin says:

      Segun el soporte del CMS que trabaja me recomienda hacer una redirecicon de esto tipo:

      ” Muchas veces tenemos la necesidad de realizar un redireccionamiento entre una y otra página. Si el servidor contaba con soporte para lenguajes como ASP, CGI o PHP esto era muy fácil, pero para aquellos que no lo tienen, pueden utilizar alguno de los siguientes métodos.

      1 – Inserta el siguiente script entre las etiquetas y :

      Quote

      location.href=’direccion.html’;

      2 – Otro método puede ser agregando la acción OnLoad dentro del Body:

      Quote

      3 – También se suele utilizar la etiqueta meta Refresh, para redireccionar a X cantidad de segundos:

      Quote

      Pero despues dehacer una consulta en forosdelweb.com u me dijeron que que son tecnicas penalizadas por google.

      Que remedio me queda para hacer que mi sitio solo responda con www.

      Ya tengo tiempo que trato de solucionarlo pero hasta ahora nada.

    • sorin says:

      No puedo dejarte el mensaje completo, sory.

      Aqui te dejo el enlace a la pagina del foro donde me responde http://foro.ucoz.es/forum/5-202-1

    • Ni se te ocurra usar este tipo de técnicas para hacer redirecciones. Son penalizadas por los buscadores como tecnicas black hat

      La única solución viable es usar una redirección 301 donde el “evento” de redirección se realiza a modo servidor.

    • Veamos, no te digo que una redirección no se pueda hacer así. El tema es que estamos hablando sobre técnicas SEO, y estas técnicas como tal, estan penalizadas ya que podría tratarse de una página doorway.

      Es decir, el usuario no ve el contenido por la redirección, pero el robot si que lo ve, o puede verlo, y por lo tanto la indexa haciendo referencia a ese contenido que hay en la web. Como Google no es tan inteligente, como para decir quien lo hace para eso y quien no… por defecto todas esas tecnicas tipo metas, onloads y demás… que cargan otra URL… son penalizadas.

      La única forma correcta es mediante un error de servidor… la redirección 301. No le des más vueltas.

    • zaetoner says:

      muchas gracias por tu informacion, ahora cambie la direccion de mis chistes de

      http://www.k-jeto.com/?id=106
      a
      http://www.k-jeto.com/mujer/Dos-chavos-manifestantes.html

      cuando se entra a la primera direccion te pasa automaticamente a la segunda por medio de el metodo que me acabas de enseñar

      gracias

    • ¿Como se haria un 301 para cambiar de dominio?

    • Options +FollowSymLinks

      RewriteEngine on
      RewriteCond ^(.*)$ [NC]
      RewriteRule (.*) http://www.nuevositio.com./$1 [R=301,L]

    • Sube says:

      Como reciente aficionado al SEO (en absoluto profesional…) estoy aprendiendo mucho con este Tutorial, de modo que ante todo gracias y enhorabuena por el trabajo.

      Hasta hace 1 mes tenía un par de sitios alojados en un hosting gratuito, por fin monté las cosas como debe ser, pero el problema viene con la redirección. Ese hosting gratuito no me permite la configuración del .htacces, con lo que opté (por ignorancia más que nada) por una redirección http mediante un refresh. Casi nada, más de 5.000 páginas redireccionadas de este modo (lógicamente no a mano…).

      Entonces, lo que planteo es: ¿es preferible no hacer ninguna redirección, para evitar una posible penalización de Google, y trabajarme de nuevo el posicionamiento, etc., o seguir con la redirección para evitar perder tráfico? Lo que me sorprende es que en 2 semanas desde la creación de los dominios, Google ya me asignó en uno de ellos el PR3 que tenía en la anterior, y no tengo este dominio, en general, peor posicionado (aparentemente).

      Gracias y perdonad por el ladrillo.

    • Blog Tecnologico says:

      Buenas tardes,

      Primero de todo, agradecerte tu visita y el participar en este blog, la verdad es que todas las aportaciones, aunque sean en “formato duda”, esto nos hace pensar y despejar dudas a otros lectores.

      Bien, retomemos tu consulta.

      Esta claro que en tal caso hay que matizar, y vemos como la redirección con la meta “refresh” no te está penalizando. De hecho, según parece, te está pasando el PR. Ahora bien, esto es debido a que se puede entender que tu no tienes porque controlar ese dominio ajeno y por lo tanto no sería lógico. Si penalizara me dedicaría a apuntar a mi competencia con redirecciones meta refresh y los vería caer de los rankings superiores. ( Si se trata dentro del mismo dominio si penalizaría por usarse como técnica de cloaking o entenderse como tal )

      Ahora bien, es muy posible que esta redirección no esté aprovechandose por completo del posicionamiento anterior, ya que no pasa el anchor text en este caso.

      El planteamiento es que sería recomendable realizar una redirección tipo 301 mediante PHP ( si se puede ). Pero sin duda, en este caso es preferible tener una redirección para no perder el tráfico, que no tenerla.

      Con el tiempo ganarás posicionamiento con el proyecto actual.

      Quizás podría darte más datos si me comentas que dos dominios son de los que estamos hablando. Puedes hacerlo enviandome un mail a info (@) blogtecnologico.net

      Saludos.

    • sube says:

      Muchas gracias, te envío un correo con los detalles. 😉

      Saludos.

    • TetsuoCNS says:

      Buenas tardes, tengo una duda, debo hacer una redirección 301 de varias url’s de mi site, pues les cambie el nombre de esta forma por cuestiones de SEO: nombre antigüo – maquinas usadas.html / nombre actual: maquinas-usadas.html, la cuestión es que al ser páginas estáticas en html no se como hacerlo, tampoco tengo acceso al .htaccess.
      Muchas gracias.

    • Blog Tecnologico says:

      Buenas tardes,

      La solución reside en poner la etiqueta:
      < link rel=”canonical” href=”http://www.blogtecnologico.net/URL-correcta.html” / >
      Entre las etiquetas justo al lado de los , debes ponerla en la página antigua como imagino que habrás deducido.

      Ánimo y suerte! 🙂

    • Ronel says:

      Gracias por incluir como hacer el redireccionamiento, es lo que estaba buscando.

    • merino renato says:

      Saludos:

      Me gusta la idea del blog, yo tengo poco en esto pero me paso lo quw dices aqui de con www y sin www

      En mi servidor cpanel tuve que hacer 301 en cada una de mi url y ya comprbe que si lo reedirecciona bien, y ya google poco a poco me va borrando lo que o tiene www.

      Mi pregunta si pudieras contestarla es: voy a cambiar mi url a algo mas SEO amigables pero ya tienen una reedireccion 301, me perjudicara mucho hacer ua nueva 301 a las url que acabo de reedireccionar?

      no se si fui claro mi ejemplo es este:

      mis url se indexaron asi:

      soloesunejemplo.com/MALAURL.html

      yo las reedirecione con 301 a:

      soloejemplo.com/MALAURL.html

      ahora las quiero volver a reedirecionar a:

      soloejemplo.com/BUENAURL.html

      debere volver a hacer 301?

      hay otra forma de hacerlo sin afectar al SEO?

      Gracias por tu respuesta de antemano

      Saludos

    • Blog Tecnologico says:

      El SEO sufrirá siempre un efecto por pequeño que sea el cambio, quizás destaque más o menos.

      En este caso… recomiendo hacer lo siguiente:

      soloesunejemplo.com/MALAURL.html redirigir a: soloejemplo.com/BUENAURL.html

      Y luego otra linea de redirección de:
      soloejemplo.com/MALAURL.html a: soloejemplo.com/BUENAURL.html

      Pero no te recomiendo ir haciendo salto tras salto entre las 301 puesto que en cada salto se pierde un pequeño valor 🙂

      Un saludo.

    • merino renato says:

      Muchas Gracias por tu respuesta pero creo que no me explique bien,

      ya hice reedirecciones 301 de sin www a con www

      pero ya configure a mi dominio preferido con www

      lo malo es que las URL con www que tengo no esstan bien enfocadas al SEO y por eso las quiero volver a cambiar

      en tu ejemplo me pusiste que reedireccione de SIN www mala a
      CON wwwbuena

      pero esa SIN www mala ya manda a una www mala

      ahora lo que quiero es modificar la www mala

      a una www buena

      pero seria reedireccionar una URL que ya tiene 301, no seria eso doble reedireccion?

      Saludos y gracias

     

    Deja tu comentario

    XHTML: Puedes usar los siguientes tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>