Hogar / Auditoría técnica del sitio / Validador de Robots.txt

Validador de Robots.txt

Robots.txt es un archivo de texto que contiene instrucciones (directivas) para la indexación de las páginas del sitio. Usando este archivo, puedes indicar a los robots de búsqueda qué páginas o secciones de un recurso web deben ser rastreadas e ingresadas en el índice (base de datos del motor de búsqueda) y cuáles no.

El archivo robots.txt se encuentra en la raíz del sitio y está disponible en domain.com/robots.txt.

¿Por qué es necesario robots.txt para SEO?

Este archivo proporciona a los motores de búsqueda instrucciones esenciales que influyen directamente en la efectividad del ranking de un sitio web en el motor de búsqueda. Usar robots.txt puede ayudar a:

  • Prevenir que los rastreadores de los motores de búsqueda escaneen contenido duplicado o páginas no útiles para los usuarios (como resultados de búsqueda internos, páginas técnicas, etc.).
  • Mantener la confidencialidad de secciones del sitio web (por ejemplo, puedes bloquear el acceso a la información del sistema en el CMS);
  • Evitar la sobrecarga del servidor;
  • Gastar efectivamente tu presupuesto de rastreo en rastrear páginas valiosas.

Por otro lado, si el robots.txt contiene errores, los motores de búsqueda indexarán el sitio incorrectamente, y los resultados de búsqueda incluirán la información equivocada.

También puedes accidentalmente prevenir la indexación de páginas útiles que son necesarias para el ranking de tu sitio en los motores de búsqueda.

A continuación, se encuentran enlaces a instrucciones sobre cómo usar el archivo robots.txt desde Google.

Introducción a robots.txt

Contenido del informe de "Errores en Robots.txt" en Labrika

Esto es lo que encontrarás en nuestro informe de "errores en robots.txt":

  1. Botón "Actualizar" - al hacer clic en él, se actualizarán los datos sobre los errores en el archivo robots.txt.
  2. El contenido del archivo robots.txt.
  3. Si se encuentra un error, Labrika proporciona la descripción del error.

Errores en Robots.txt que detecta Labrika

La herramienta encuentra los siguientes tipos de errores:

La directiva debe estar separada de la regla por el símbolo ":"

Cada línea válida en tu archivo robots.txt debe contener el nombre del campo, dos puntos y el valor. Los espacios son opcionales pero recomendados para la legibilidad. El símbolo de almohadilla "#" se usa para agregar un comentario, que se coloca antes de que comience. El robot del motor de búsqueda ignorará todo el texto después del símbolo "#" y hasta el final de la línea.

Formato estándar:

<campo>:<valor><#comentario-opcional>

Un ejemplo de un error:

User-agent Googlebot

Falta el carácter ":".

Opción correcta:

User-agent: Googlebot

Directiva vacía y regla vacía

No se permite usar una cadena vacía en la directiva user-agent.

Esta es la directiva principal que indica para qué tipo de robot de búsqueda se escriben las reglas de indexación posteriores.

Un ejemplo de un error:

User-agent:

No se especificó ningún user-agent.

Opción correcta:

User-agent: el nombre del bot

Por ejemplo:

User-agent: Googlebot o User-agent: *

Cada regla debe contener al menos una directiva "Permitir" o "Denegar". Denegar cierra una sección o página de la indexación. "Permitir", como su nombre indica, permite que las páginas sean indexadas. Por ejemplo, permite a un rastreador rastrear un subdirectorio o página en un directorio que normalmente está bloqueado para el procesamiento.

Estas directivas se especifican en el formato:

directiva: [ruta], donde [ruta] (la ruta a la página o sección) es opcional.

Sin embargo, los robots ignoran las directivas Permitir y Denegar si no especificas una ruta. En este caso, pueden escanear todo el contenido.

Una directiva Denegar: vacía es equivalente a la directiva Permitir: /, es decir, "no negar nada."

Un ejemplo de un error en la directiva Sitemap:

No se especificó la ruta al sitemap.

Opción correcta:

Sitemap: https://www.site.com/sitemap.xml

No hay directiva User-agent antes de la regla

La regla siempre debe venir después de la directiva User-agent. Colocar una regla delante del primer nombre del user-agent significa que ningún rastreador la seguirá.

Un ejemplo de un error:

Denegar: /categoría

User-agent: Googlebot

Opción correcta:

User-agent: Googlebot

Denegar: /categoría

Uso de la forma "User-agent: *"

Cuando vemos User-agent: * esto significa que la regla está establecida para todos los robots de búsqueda.

Por ejemplo:

User-agent: *

Denegar: /

Esto prohíbe a todos los robots de búsqueda indexar todo el sitio.

Debe haber solo una directiva User-agent para un robot y solo una directiva User-agent: * para todos los robots.

Si el mismo user-agent tiene diferentes listas de reglas especificadas en el archivo robots.txt varias veces, será difícil para los robots de búsqueda determinar qué reglas considerar. Como resultado, el robot no sabrá qué regla seguir.

Un ejemplo de un error:

User-agent: *

Denegar: /categoría

User-agent: *

Denegar: /*.pdf.

Opción correcta:

User-agent: *

Denegar: /categoría

Denegar: /*.pdf.

Directiva desconocida

Se encontró una directiva que no es compatible con el motor de búsqueda.

Las razones para esto pueden ser las siguientes:

  • Se escribió una directiva inexistente;
  • Se cometieron errores de sintaxis, se usaron símbolos y etiquetas prohibidos;
  • Esta directiva puede ser utilizada por otros robots de motores de búsqueda.

Un ejemplo de un error:

Dinegar: /catálogo

La directiva "Dinegar" no existe. Hubo un error en la ortografía de la palabra.

Opción correcta:

Denegar: /catálogo

El número de reglas en el archivo robots.txt excede el máximo permitido

Los robots de búsqueda procesarán correctamente el archivo robots.txt si su tamaño no excede los 500 KB. El número permitido de reglas en el archivo es 2048. El contenido que exceda este límite será ignorado. Para evitar excederlo, usa directivas más generales en lugar de excluir cada página.

Por ejemplo, si necesitas bloquear la escaneado de archivos PDF, no bloquees cada archivo individualmente. En su lugar, desautoriza todas las URL que contengan .pdf con la directiva:

Denegar: /*.pdf

La regla excede la longitud permitida

La regla no debe tener más de 1024 caracteres.

Formato de regla incorrecto

Tu archivo robots.txt debe estar codificado en UTF-8 en texto plano. Los motores de búsqueda pueden ignorar caracteres no UTF-8. En este caso, las reglas del archivo robots.txt no funcionarán.

Para que los robots de búsqueda procesen correctamente las instrucciones en el archivo robots.txt, todas las reglas deben estar escritas siguiendo el Estándar de Exclusión de Robots (REP), que Google soporta y la mayoría de los motores de búsqueda conocidos.

Uso de caracteres nacionales

El uso de caracteres nacionales está prohibido en el archivo robots.txt. Según el sistema de nombres de dominio aprobado por el estándar, un nombre de dominio sólo puede consistir en un conjunto limitado de caracteres ASCII (letras del alfabeto latino, números del 0 al 9 y un guión). Si el dominio contiene caracteres no ASCII (incluyendo alfabetos nacionales), debe ser convertido a Punycode para un conjunto de caracteres válido.

Un ejemplo de un error:

User-agent: Googlebot

Sitemap: https: //bücher.tld/sitemap.xml

Opción correcta:

User-agent: Googlebot

Sitemap: https://xn-bcher-kva.tld/sitemap.xml

Se pudo haber utilizado un carácter no válido

Se permite el uso de caracteres especiales "*" y "$". Especifican patrones de direcciones al declarar directivas para que el usuario no tenga que escribir una gran lista de URL finales para bloquear.

Por ejemplo:

Denegar: /*.php$

prohíbe la indexación de cualquier archivo PHP.

  • El asterisco "*" denota cualquier secuencia y cualquier número de caracteres.
  • El signo de dólar "$" denota el final de la dirección y limita el efecto del signo "*".

Por ejemplo, si /*.php coincide con todas las rutas que contienen .php., entonces /*.php$ solo coincide con rutas que terminan en .php.

El símbolo "$" está escrito en el medio del valor

El signo "$" sólo se puede usar una vez y solo al final de una regla. Indica que el carácter que está delante de él debe ser el último.

Un ejemplo de un error:

Permitir: /file$html

Opción correcta:

Permitir: /file.html$

La regla no comienza con "/" o "*"

Una regla solo puede comenzar con los caracteres "/" y "*".

El valor de la ruta se especifica en relación con el directorio raíz del sitio donde se encuentra el archivo robots.txt y debe comenzar con una barra inclinada "/" que indica el directorio raíz.

Un ejemplo de un error:

Denegar: productos

La opción correcta:

Denegar: /productos

o

Denegar: *productos

dependiendo de lo que quieras excluir de la indexación.

Formato incorrecto de la URL del sitemap

El sitemap es para los rastreadores de motores de búsqueda. Contienen recomendaciones sobre qué páginas rastrear primero y con qué frecuencia. Tener un sitemap ayuda a los robots a indexar las páginas que necesitan más rápido.

La URL del Sitemap debe contener:

  • La dirección completa
  • La designación del protocolo (HTTP: // o HTTPS: //)
  • El nombre del sitio
  • La ruta al archivo
  • El nombre del archivo

Un ejemplo de un error:

Sitemap: /sitemap.xml

Opción correcta:

Sitemap: https://www.site.ru/sitemap.xml

Formato incorrecto de la directiva "Crawl-delay"

La directiva Crawl-delay establece el período mínimo entre el final de la carga de una página y el inicio de la carga de la siguiente para el robot.

La directiva Crawl-delay debe usarse en casos donde el servidor está muy cargado y no tiene tiempo para procesar las solicitudes del rastreador. Cuanto mayor sea el intervalo establecido, menor será el número de descargas durante una sesión.

Al especificar un intervalo, puedes usar tanto valores enteros como valores fraccionarios. Se usa un punto como separador. La unidad de medida es en segundos:

Errores incluyen:

  • Varias directivas Crawl-delay;
  • Formato incorrecto de la directiva Crawl-delay.

Un ejemplo de un error:

Crawl-delay: 0,5 segundos

Opción correcta:

Crawl-delay: 0.5

Nota: Google no soporta la directiva Crawl-delay. Para un bot de Google, puedes establecer la frecuencia de visitas en el panel de webmasters de Search Console. Sin embargo, los bots de Bing y Yahoo sí cumplen con la directiva Crawl-delay.

La línea contiene el carácter BOM (Byte Order Mark) - U + FEFF

BOM (Byte Order Mark - marcador de secuencia de bytes) es un carácter de la forma U + FEFF, ubicado al comienzo del texto. Este carácter Unicode se usa para determinar la secuencia de bytes al leer información.

Al crear y editar un archivo usando programas estándar, los editores pueden asignar automáticamente la codificación UTF-8 con una etiqueta BOM.

BOM es un carácter invisible. No tiene una expresión gráfica, por lo que la mayoría de los editores no lo muestran. Pero al copiar, este símbolo puede ser transferido a un nuevo documento.

Al usar un marcador de secuencia de bytes en archivos .html, las configuraciones de diseño se confunden, los bloques se desplazan y pueden aparecer conjuntos de caracteres ilegibles, por lo que se recomienda eliminar la etiqueta de los scripts web y archivos CSS.

¿Cómo deshacerse de las etiquetas BOM?

Deshacerse del PTO es bastante complicado. Una forma fácil de hacerlo es abrir el archivo en un editor que pueda cambiar la codificación del documento y volver a guardarlo con la codificación UTF-8 sin el BOM.

Por ejemplo, puedes descargar el editor Notepad ++ de forma gratuita. Luego abre el archivo con la etiqueta PTO en él y selecciona el elemento "Codificación en UTF-8 (sin BOM)" en la pestaña del menú "Codificaciones".

¿Cómo corregir los errores del Validador de Robots.txt?

Un archivo robots.txt indica a los rastreadores de motores de búsqueda qué páginas pueden y no pueden acceder. Los errores típicos y sus soluciones incluyen:

  • El robots.txt no está en el directorio raíz. Para solucionar esto, simplemente debes mover tu archivo al directorio raíz.
  • Uso incorrecto de caracteres comodín, como * (asterisco) y $ (signo de dólar). Si están mal colocados, debes localizar y mover o eliminar este carácter.
  • Dar acceso a sitios en desarrollo. Cuando un sitio está en construcción, puedes usar la instrucción Denegar para evitar que sea rastreado, sin embargo, una vez lanzado estos deben ser eliminados.
  • Si ves: - User-Agent: * Denegar: /

Esto tiende a significar que la página en vivo todavía está siendo bloqueada.

No agregar una URL de sitemap a tu robots.txt. Una URL de sitemap permite a los bots de motores de búsqueda tener una vista más clara de tu sitio.