Robots.txt, nofollow y noindex

Hasta ahora he comentado los trucos y mejoras en tu web para permitir que los buscadores la indexen pero, como es normal, hay zonas o secciones que no queremos que indexen, como el área privada de los usuarios o páginas con el mismo contenido pero menor relevancia.

Pueden ser muchos los motivos por los que no quieras indexar una página o incluso una web entera, por ejemplo que está en BETA, es una página personal o no quieres problemas de contenido duplicado.

Para ello, hay que decirle a los spiders (que son los robots que usan los buscadores para rastrear tu web e indexarla), que no lo hagan.



Robots.txt

Si quieres que los spiders no rastreen una o varias de tus páginas, la forma mas segura es utilizar un archivo llamado robots.txt, y que no es mas que un simple archivo de texto (que puedes crear con el notepad) en el que se establecen ciertos criterios que informan a los buscadores sobre lo que no deben rastrear.

Para crear el robots.txt basta con crearlo usando el notepad y el siguiente código:

User-Agent: Googlebot
Disallow: /no-lo-indexes.html
Disallow: /carpeta-no-indexable/
Disallow: /*/subcarpeta-no-indexable/

En User Agent se establece el buscador al que quieres hacer referencia, y bajo el, en cada disallow una url de tu web que no quieres que sea indexada. Si quieres establecer que todos los buscadores sigan esas instrucciones, basta con poner el signo * en User-Agent (aunque dado que cada buscador premia unas u otras cosas aveces puede interesar permitir que unos indexen lo que otros no quieres que vean).

Para conocer los nombres de todos los buscadores busca aquí una lista, yo te dejo los spiders mas interesantes:

  • Google: Googlebot
  • Yahoo: yahoo_slurp
  • MSN: msnbot
  • Altavista: Scooter
  • Lycos: Lycos_Spider_(T-Rex)

Cuidado al colocar varios spiders y un comodín, ya que los spiders no harán caso de lo que ponga el comodín si tienen su sección propia, de tal manera que lo siguiente permitiría a Google indexar tu web pero al resto de buscadores no:

User-Agent: *
Disallow: /
User-Agent: Googlebot
Disallow: /carpetita/

Lo mismo sucede si por error te olvidas de poner algo tras el disallow, estarías diciendo que permites que indexen toda la página:

User-Agent: *
Disallow: /directorio/
Disallow:

Respecto a las páginas que no quieres indexar, puedes colocar archivos, directorios enteros, tipos de archivos, parámetros, etc. Para ello puedes utilizar el asterisco como comodin (que representa uno o varios caracteres indefinidos) y el dólar ‘$’ que indica que la url debe finalizar ahí. Te muestro unos ejemplos:

User-Agent: *
Disallow: /*/primavera/
Disallow: /*?
Disallow: /*.gif$
Disallow: /*userid=
Disallow: /*/*id=

El anterior robots impediría el acceso al subdirectorio primavera, cualquier URL que contenga un QueryString (o el símbolo ?), los gifs y cualquier url en que se incluya el parámetro userid o subdirectorio en que se incluya el parámetro id.

Si no utilizamos bien el $ podemos tener problemas, ya que sin él se especifica que cualquier URL que empiece por la cadena establecida no sea recorrida por los spiders, pero con él, se establece que deben terminar en eso. De forma que “/usabilidad/” impide el acceso al directorio usabilidad, “/*usabilidad” impide el acceso a cualquier URL que contenga usabilidad y “/*usabilidad$” impide el acceso a cualquier URL que termine en usabilidad. Ahora imaginemos que por error ponemos esto:

User-Agent: *
Disallow: /*?

Pretendiendo denegar el acceso a las páginas que contengan un QueryString vacío, estaríamos denegando en realidad cualquier página que contenga un QueryString, para lo primero debe ponerse el $ al final, indicando que tras el ? no debe haber nada mas y, si lo hay, entonces sí debe indexarse.

Por último, si lo que buscas es cerrar la web entera a los buscadores, bastaría con poner la barra de la raíz así:

User-Agent:*
Disallow: /

Nofollow y Noindex

Por otro lado, es posible que en tu página des opción a los usuarios a colocar enlaces y te encuentres con el problema que tuvieron en Wikipedia, y es que todo el mundo metía enlaces a sus webs aprovechando el prestigio de la famosa enciclopedia y empezaba a llenarse de spam hasta que apareció el nofollow, propiedad que sobre un enlace le dice a Google que no lo tenga en cuenta, con lo que ya no puede servir a esos usuarios para incrementar su Page Rank.

<a href="www.googlecom rel="nofollow">No lo sigas!!</a>
<a href="entrecodigos.com/noindex/" rel="noindex">No lo indexes!!</a>

Además del nofollow, también existe el noindex, que le dice a Google que, aunque si puede seguir ese enlace (y por tanto tener en cuenta la página a la que apunta) no debe indexarla en sus búsquedas, esta etiqueta también puede ponerse en un meta de la página para asegurarse, aunque si pones este meta, recuerda quitar la página del robots.txt, o Google no pasará por la página y no podrá verlo.

Ten en cuenta que aunque le digas a Google en el robots que no rastree una de tus páginas, eso no implica que Google no la pueda indexar, ya que puede que haya un enlace a la misma en otras páginas, por lo que es necesario usar el meta noindex y quitar la página del robots para que vuelva a rastrearla y sepa que no la debe indexar.

Ah, y no os preocupéis, en mi Blog no he puesto que vuestros enlaces tengan un nofollow, es lo menos que puedo hacer por quienes comentan, dejar un enlace a su página con el anchor text que prefieran, siempre y cuando no sea spam claro… así que no esperes mas y empieza a poner comentarios para que parte de mi PR4 se redirija a tu página 😉

169 thoughts on “Robots.txt, nofollow y noindex”

  1. Lllegue por la información a través de google y se agradece, pero aunque no me gusta ahcerlo, debo decir que eres un poco mentirosete, ya que yo uso un addon de mozilla que me indica los enlaces “NOFOLLOW” y tu dices que no tienes puesto el no follow en los comentarios y es falso.. todos los enalces bien el de nombre de usuarios o el que alguno puedan colocar en el comentario, tienen el atributo rel=”nofollow”

  2. Buenas Sagitario, como creo haber dicho ya en algún comentario los comentarios viejos sí tienen puesto el nofollow pero si te fijas en el sidebar los comentarios recientes no lo tienen por lo que sí otorgan backlinks. En un principio lo tenía más abierto pero al final se genera demasiado spam (de hecho por eso tengo que aprobar los comentarios manualmente) y lo limité algo más, la idea era premiar a quienes son más fieles al blog y postean comentarios por aquí más a menudo.

  3. Hola, mi caso es el contrario necesito que Google indexe mi web y quitar noindex,follow y no sé donde. Lo que he hecho hasta ahora.
    1. Utilizo wordpress y en Head me aparece ?php wp_head(); ?.
    Si lo borro se me borra el meta pero la web se desconfigura.
    2. He añadido antes de meta noindex otro meta con follow
    3. He subido a wp-admin un archivo robot.txt con User-agent: *
    Allow: /

    ¿Cómo puedo solucionarlo?
    Muchas Gracias

  4. Haber si me puedes ayudar, en mi pagina tengo paginacion y no deseo que se indexe la paginacion. Por ejemplo tengo web.com/categoria/ Luego tengo web.com/categoria/page/2/ y asi varias paginas, solo deseo que se indexe web.com/categoria/ y las paginas que contengas “page” no se indexen, como lo haria en robots.txt o con una etiqueta meta?

  5. Buenas, el artículo me ha parecido super útil, pero me gustaría saber tu opinión sobre un dilema que tengo en una web en wordpress que estoy montando, a ver si me puedes echar un cable:

    Como te decía es una web en wordpress y estoy utilizando una plantilla en estilo parallax (se tratan de esas plantillas que se desarrollan completamente a lo largo de un scroll)

    La página principal del dominio, la home, es donde se desarrolla todas las secciones del sitio, con una única url ej. wwwww.com

    A la hora de crear el contenido de estas secciones wordpress lo identifica como si fuese una entrada y por tanto debo de optimizarla a nivel seo con una palabra clave (utilizo el plugin SEO by Yoast), el problema está que esas secciones están ubicadas en la misma url wwwww.com, con lo que si tenemos en cuenta que cada sección la optimizo con palabras clave de cada uno de las temáticas de esas secciones la url wwwww.com pierde fuerza a nivel seo porque no está optimizada para unas pocas palabras clave, sino para las de las secciones. ¿Cómo podría hacer que esas secciones no sean indexadas por Google?, luego cuando pinchas en esa sección sí que lleva a una url diferente que sí que puedo optimizar.

    Mi problema estaría en esa home donde se encuentran las secciones.

    Sé que el un follón lo que acabo de explicar, es difícil explicarlo y más fácil de ver, lo siento por la parrafada.

    Estoy algo perdido en este punto agradecería un montón vuestros consejos.

    Gracias.

  6. Tengo una duda. Estuve haciendo una página sobre canales de tv y google me la bloqueo porque tenia codigo malicioso, mi pregunta es: hay alguna forma de que google no me bloquee mi pagina o algun robot que no rastree mis publicaciones y mi pagina. he visto que determinadas paginas usan el servicio de tv y google no se las bloque, Hay alguna solucion para que no me pase?

Comments are closed.