Evitar que los buscadores indexen páginas de nuestro sitio

Por defecto, los buscadores no tienen restricciones a la hora de indexar páginas de nuestro sitio web, y las utilizarán como resultados de las búsquedas que en ellos se realicen. Este proceso lo realizan sus crawlers, bots o spiders. Ahora veremos cómo indicarles lo que no deseamos que hagan.

Tengan en cuenta que estas son directivas que los bots podrían no respetar y cada buscador luego puede decidir si muestra o no la página en los resultados de búsqueda.

Definir un archivo robots.txt

En el directorio raíz de nuestro sitio, debemos crear un archivo de texto plano llamado robots.txt.

Si bien por definición soporta varias directivas, las más difundidas y contempladas son:

  • User-agent: bots a los cuales aplica la directiva posterior
    • *: Todos los bots
    • nombre-bot: La regla aplica solamente a ese bot. Algunos de los que existen hoy día: googlebot ,bingbot ,msnbot ,slurp ,scoutjet ,duckduckbot ,yandexbot ,baiduspider ,naverbot ,yeti ,exabot ,gigabot ,daumoa ,antbot ,botw ,ccbot ,mj12bot
  • Disallow: partes del sitio que no deben ser indexadas
    • vacío: Permite todo el contenido
    • /nombre-directorio/: Bloquea todo el contenido dentro de ese directorio
    • /patron: Bloquea los directorios y páginas que comiencen con el texto “patron”, ya sea el directorio “patronato” con todo su contenido o el archivo “patron.html”
  • Crawl-delay: cantidad de segundos que debe esperar el bot para indexar otra página del sitio. Evita que todas las peticiones se realicen en un periodo de tiempo muy breve, incrementando el tráfico.

Todo el texto que se agregue después de un caracter numeral (#) hasta el final de la línea, se considera un comentario.

No es obligatorio tener definido un robots.txt, pero de no existir es posible que el log del servidor registre un error 404 (no encontrado) cada vez que un bot intente obtenerlo. Si es solo por este motivo se puede crear el archivo vacío.

Esta solución es la más común ya que no ensucia el código de las páginas y puede aplicarse a nivel global de manera muy simple, pero muchos bots no la respetan y además cualquiera puede ver su contenido.

Ejemplo:

User-agent: *

Disallow: /private/

Disallow: /examples/test.php

Disallow: /error.htm

Estas líneas evitan que los bots indexen contenido dentro del directorio private, la página test.php dentro de examples y la página error.htm.

 

Usar el tag meta

En la cabecera de cada página que deseemos evitar que se indexe, debemos agregar (dentro del tag <head>):

Para bloquear todos los bots en la página

<meta name="robots" content="noindex" />

Para bloquear solamente el bot de Google en la página

<meta name="googlebot" content="noindex" />

Esta solución sólo es posible cuando se genera contenido HTML (no se pueden excluir otros tipos de documentos) y además los bots incrementan el tráfico verificando cada una de las páginas.

Tagged with: , , ,
Publicado en Internet