Usamos cookies propias y de terceros para mostrar publicidad. Si continua navegando consideramos que acepta el uso de cookies. OK Más información

Uso adecuado del archivo robots.txt

Publicado por Israel Noguera

metarobots_seo.jpgEs un archivo de texto que se aloja en el directorio principal (nivel superior) del sitio web y especifica mediante una serie de reglas una serie de restricciones de acceso.

Es el primer archivo que consulta la araña y obedecerá las especificaciones indicadas, no rastreará las páginas que se hayan indicado y no accederá si ese mismo robot no tiene permitido el acceso. Aunque todos los robots acreditados respetan las directivas del archivo robots.txt, algunos pueden interpretarlas de forma diferente. Sin embargo, el archivo robots.txt no es obligatorio y algunos emisores de spam y otros malhechores pueden ignorarlo. Por este motivo, es recomendable proteger la información confidencial con contraseñas.

Si el sitio web no va a contener contenido privado, que no quieras que se indexe, el archivo es totalmente innecesario, no es necesario crearlo.

Si bien Google no rastreará ni indexará el contenido de las páginas bloqueadas por robots.txt, sí que indexará las URL que encuentre en otras páginas de la Web, aunque estas páginas esten restringidas en el archivo.

Para impedir que aparezca cualquier contenido de una página en el índice de páginas web de Google, incluso si está vinculado a otros sitios, se puede utilizar una metaetiqueta "noindex" o una etiqueta x-robots-tag. Siempre que Googlebot rastree la página, verá la metaetiqueta "noindex" y no incluirá esa página en el índice de páginas web. La cabecera HTTP "X-Robots-Tag" resulta especialmente útil para limitar la indexación de archivos que no sean HTML, como archivos gráficos y otro tipo de documentos.

Un ejemplo sencillo:

User-agent: *
Disallow: /publico/

User-Agent: Googlebot
Disallow: /privado/

En el ejemplo, las únicas URL que no puede rastrear Googlebot son las de /privado/.

User-agents y robots

Un user-agent es un robot específico de búsqueda. Podemos especificar que las reglas se apliquen a un determinado robot o a todos con el uso del asterisco:

User-agent: *

Google utiliza varios robots diferentes (user-agents). El robot utilizado para búsqueda web es Googlebot. El resto de robots, como Googlebot-Mobile y Googlebot-Image, siguen las reglas configuradas para Googlebot, aunque también pueden definirse reglas específicas para ellos.

Bloquear user-agents

La línea Disallow indica las páginas que quieres bloquear. Puedes insertar una URL específica o un patrón. La entrada debe comenzar con una barra inclinada (/).

Para bloquear todo el sitio, utiliza una barra inclinada.

Disallow: /

Para bloquear un directorio y todo lo que contiene, inserta una barra inclinada después del nombre del mismo.

Disallow: /directorio-sintítulo/

Para bloquear una página, insértala después de la línea Disallow.

Disallow: /archivo_privado.html

Para eliminar una imagen de Google Imágenes, añade lo siguiente:

User-agent: Googlebot-Image
Disallow: /imágenes/perros.jpg

Para eliminar todas las imágenes de un sitio de Google Imágenes, añade lo siguiente:

User-agent: Googlebot-Image
Disallow: /

Para bloquear archivos de un determinado tipo (por ejemplo, .gif), añade lo siguiente:

User-agent: Googlebot
Disallow: /*.gif$

Para evitar que se rastreen las páginas de tu sitio, sin impedir que se muestren anuncios de AdSense en esas páginas, inhabilita el acceso de todos los robots que no sean de Mediapartners-Google. Esta opción impide que las páginas aparezcan en los resultados de búsqueda, pero permite que el robot Googlebot-Mediapartners las analice para determinar los anuncios que se publicarán. El robot Googlebot-Mediapartners no comparte páginas con el resto de user-agents de Google. Por ejemplo:

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /

Concordancia mediante patrones

Googlebot respeta algunas concordancias mediante patrones, aunque no todos los motores de búsqueda lo hacen.

Puedes utilizar un asterisco (*) para que la concordancia se establezca con una secuencia de caracteres. Por ejemplo, para bloquear el acceso a todos los subdirectorios que empiecen por "privado":

User-agent: Googlebot
Disallow: /privado*/

Para bloquear el acceso a todas las URL que incluyan un signo de interrogación (?) (más concretamente, cualquier URL que empiece por el nombre de tu dominio, seguido de una cadena, un signo de interrogación y una cadena), añade lo siguiente:

User-agent: Googlebot
Disallow: /*?

Para especificar la concordancia con el final de la URL, utiliza $. Por ejemplo, para bloquear una URL que termine en .xls:

User-agent: Googlebot
Disallow: /*.xls$
User-agent: *
Allow: /*?$
Disallow: /*?

La directiva Disallow: / *? bloqueará cualquier URL que incluya el símbolo ?. Concretamente, bloqueará todas las URL que comiencen por el nombre de tu dominio, seguido de cualquier cadena, un signo de interrogación y cualquier cadena.

La directiva Allow: /*?$ permitirá cualquier URL que finalice con el símbolo ?. Concretamente, admitirá cualquier URL que comience por el nombre de tu dominio, seguido de cualquier cadena y el símbolo ?, sin caracteres después de este último.

Preguntas frecuentes

¿Necesita mi sitio un archivo robots.txt?

No. Cuando Googlebot visita un sitio web, lo primero que hace es pedir permiso para rastrear al intentar recuperar el archivo robots.txt. Un sitio web sin un fichero robots.txt generalmente será rastreado e indexado normalmente.

¿Qué método debo usar?

Depende. En resumen, hay buenas razones para utilizar cada uno de estos métodos:

robots.txt: Úsalo si el rastreo de tu contenido está causando problemas en el servidor. Por ejemplo, es posible que quieras inhabilitar el rastreo de scripts. No uses únicamente el robots.txt para bloquear el contenido privado (usa autenticación de servidor en su lugar), o emplea canonización. Si quieres estar seguro de que una URL no se va a indexar, usa la metaetiqueta robots o X-Robots-Tag.

Meta etiqueta robots: Úsalo si necesitas controlar una página HTML en concreto, si se muestra en los resultados de búsqueda (o para asegurarte de que no aparezca).

Cabecera HTTP X-Robots-Tag: Úsalo si necesitas controlar cómo el contenido no HTML se muestra en los resultados de búsqueda (o para asegurarte de que no aparezca).

¿Puedo utilizar estos métodos para eliminar algún otro sitio?

No. Estos métodos sólo son válidos para los sitios donde se puede modificar el código o añadir archivos. Si quieres eliminar el contenido de un sitio de terceros, es necesario ponerse en contacto con el webmaster para que las quite del contenido.

Quiero bloquear una carpeta privada. ¿Puedo evitar que otras personas vean mi archivo robots.txt?

No. El archivo robots.txt es público. Si las carpetas o nombres de archivos del contenido no deben ser público, no los pongas en el archivo robots.txt.

¿Tengo que incluir la directiva para permitir el rastreo?

No, no es necesario, el archivo robots se usa para restringir.

¿Qué pasa si tengo un error en mi archivo robots.txt o usa una directiva obsoleta?

Los robots son muy flexibles en este aspecto y por lo general no se dejan llevar por los pequeños errores. Lo peor que puede pasar es que una directiva incorrecta la ignoren.

Si bloqueo a Google para que rastree una página mediante un archivo robots.txt, va a desaparecer de los resultados de búsqueda?

Es probable que disminuya el rango de esa página o hacer que se caiga por completo con el tiempo. También puede reducir la cantidad de detalles proporcionados a los usuarios en el texto a continuación del resultado de la búsqueda. Esto es porque sin el contenido de la página, el motor de búsqueda tiene mucha menos información para trabajar.

Sin embargo, una restricción en robots.txt no garantiza que una página no aparecerá en los resultados: Google aún puede decidir, con base en información externa, como enlaces entrantes, que es relevante. Si desea bloquear explícitamente la indexación de una página, usa el noindex, meta tag robots o el encabezado HTTP X-Robots-Tag. En cualquier caso, la directriz también deberá estar incluida en el archivo robots.txt.

¿Cuánto tiempo necesita Google para que los cambios en mi archivo robots.txt se reflejen en los resultados de búsqueda?

En primer lugar, la memoria caché del archivo robots.txt debe actualizarse (por lo general para un máximo de un día). Incluso después de encontrar el cambio, el rastreo y la indexación es un proceso complicado que a veces puede tomar bastante tiempo para las direcciones URL individuales, por lo que es imposible dar una fecha exacta. Además, incluso si el archivo robots.txt no permitir el acceso a una URL, la URL puede permanecer visible en los resultados de búsqueda a pesar del hecho de que no se puede rastrear.

¿Es la metaetiqueta robots un reemplazo para el archivo robots.txt?

No. Las directivas del archivo robots.txt indican qué páginas son visitadas. La metaetiqueta robots controla si una página se indexada, pero para ver esta etiqueta la página necesita rastrearse y por lo tanto cargarse. Si la página provoca una alta carga en el servidor, por ejemplo, se debe utilizar el archivo robots.txt. Si es sólo una cuestión de si debe o no una página mostrarse en los resultados de búsqueda, usa la metaetiqueta robots.

Comentarios 2 comentarios

Comentario

victor

Excelente, muy claro,no se por que los seo recomiendan este tipo de archivo.Muy bueno tu articulo.

Comentario

Antonio Jiménez

Magnífico post, la verdad es que había leido varios artículos sobre el tema y no me había quedado claro hasta leer el tuyo, Gracias Israel. Una pregunta: Tengo una tienda online desarrollada con magento, ¿como hago para colocar la metaetiqueta noindex o una Cabecera HTTP X-Robots-Tag.?