PS PrestaShop Intermedio

AI Crawler Manager — Documentación

Guía completa del módulo dfaicrawlermanager: instalación, constructor visual robots.txt, bloqueo HTTP 403, importación de logs Apache/Nginx y estrategias de bloqueo de bots IA.

Actualizado Versión del módulo 1.0.0

Presentación

AI Crawler Manager (slug técnico: dfaicrawlermanager) le da a su tienda PrestaShop 8 o 9 el control fino del tráfico generado por los bots IA: GPTBot de OpenAI, ClaudeBot de Anthropic, Google-Extended, Applebot-Extended, PerplexityBot, Bytespider de ByteDance y más de 25 otros crawlers actualizados a mayo de 2026.

Tres mecanismos de protección complementarios:

  • Constructor visual de robots.txt — permite/bloquea cada bot con un interruptor, aplica un preajuste en un clic, escribe el archivo sin romper sus directivas manuales.
  • Bloqueo HTTP 403 — para los bots que ignoran robots.txt (Bytespider, anthropic-ai legacy), devuelve un código 403 en la primera petición, antes de cualquier procesamiento PrestaShop.
  • Estadísticas de crawl — seguimiento en tiempo real vía hook + importación de logs Apache/Nginx para medir retroactivamente el tráfico IA.
Nota — El módulo nunca toca su robots.txt fuera de su propia sección, delimitada por los marcadores centinela # BEGIN DataFirefly AI Crawler Manager y # END DataFirefly AI Crawler Manager. Todo lo demás del archivo se conserva tal cual, y un archivo .bak se crea en cada escritura.

Requisitos

  • PrestaShop 8.0 → 9.x
  • PHP 7.4 mínimo (PHP 8.0 a 8.3 recomendado)
  • MySQL 5.7 / MariaDB 10.3 o superior
  • Permisos de escritura en /robots.txt (raíz de la tienda)
  • Para la importación de logs: acceso de lectura al log de acceso Apache/Nginx (generalmente /var/log/apache2/access.log, o ~/logs/ en o2switch, ~/access-logs/ en cPanel)

Instalación

  1. Descargue el archivo dfaicrawlermanager-v1.0.0.zip desde su cuenta DataFirefly.
  2. En el back-office PrestaShop, vaya a Módulos › Gestor de módulos › Subir un módulo.
  3. Arrastre y suelte el ZIP, espere la confirmación y haga clic en Instalar.
  4. Una vez instalado, una nueva pestaña AI Crawler Manager aparece en el menú izquierdo (bajo Configurar).

La instalación crea 5 tablas (prefijo ps_dfaicm_), siembra automáticamente la lista de 30+ bots IA y añade 6 pestañas de administración.

Consejo — No se requiere composer install. El autoloader PSR-4 está integrado en el módulo bajo el namespace DataFirefly/AiCrawlerManager.

Primeros pasos — el panel de control

La pestaña AI Crawler Manager abre el panel de control. En una instalación nueva, verá:

  • Bots IA seguidos: 30+ (recuento de bots activos en la base de datos)
  • Bots bloqueados: 0 (por defecto, todos los bots están permitidos)
  • Visitas (30d): 0 (el seguimiento en tiempo real solo inicia tras activación)
  • Reglas por ruta: 0

Tres acciones recomendadas en este punto:

  1. Abrir el constructor visual de robots.txt y aplicar un preajuste (ver sección dedicada).
  2. Activar el seguimiento en tiempo real en Ajustes para empezar a recoger estadísticas.
  3. Opcional: importar sus logs de acceso históricos para ver el tráfico IA de las semanas anteriores.

Pestaña Bots IA

La lista completa de los 30+ bots seguidos, con:

  • Nombre visible: nombre marketing (ej. «ClaudeBot»)
  • User-agent: cadena exacta buscada en la cabecera HTTP
  • Editor: empresa (OpenAI, Anthropic, Google, ByteDance, Meta…)
  • Uso: training (entrenamiento LLM), assistant (respuestas tiempo real), search (motor de búsqueda IA), crawl (genérico)
  • Respeta robots.txt: sí / no (indica si robots.txt es suficiente)
  • Estado: permitido / bloqueado

Acciones disponibles:

  • Editar un bot para ajustar su estado o añadir notas internas.
  • Bloquear / Desbloquear en masa con las acciones de grupo al pie de la lista.
  • Cualquier cambio activa una regeneración automática de robots.txt si la opción correspondiente está activada en Ajustes.

Constructor visual de robots.txt

La pestaña más utilizada: editor visual del archivo robots.txt.

Preajustes con un clic

Cinco estrategias listas para usar:

  • Bloquear solo entrenamiento — detiene los bots training (GPTBot, ClaudeBot, anthropic-ai, CCBot, Bytespider…) y mantiene los bots assistant y search permitidos (ChatGPT-User, Claude-User, OAI-SearchBot…). Recomendado para la mayoría de tiendas.
  • Estricto — bloquea training + crawl genérico, permite assistant + search.
  • Bloquear todo — disallow en los 30+ bots IA.
  • Permitir todo — reinicia todos los bots a permitido.
  • Bloquear solo Bytespider — útil si solo quiere apuntar al crawler más agresivo sin tocar el resto.
Importante — Un preajuste sobrescribe el estado de todos los bots afectados. Se solicita confirmación antes de aplicar. Luego puede afinar bot por bot.

Interruptor por bot

Cada bot tiene su propio interruptor:

  • Verde = permitido (sin directiva Disallow en robots.txt)
  • Rojo = bloqueado (directiva User-agent: X / Disallow: / escrita en la sección gestionada)

Un badge amarillo «ignora robots.txt» marca los bots para los que robots.txt solo es insuficiente. Para esos, active también el bloqueo HTTP 403 en Ajustes (ver sección dedicada).

Vista previa en vivo

El panel derecho muestra en tiempo real el contenido que se escribirá en robots.txt. Aspecto típico:

# BEGIN DataFirefly AI Crawler Manager
# Generated 2026-05-26 14:32 — do not edit manually

User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Allow: /

User-agent: Bytespider
Disallow: /

# … otros bots …

Sitemap: https://example.com/sitemap.xml
# END DataFirefly AI Crawler Manager

Haga clic en Guardar en robots.txt para escribir el archivo. Un archivo robots.txt.bak se crea al lado en cada guardado.

Reglas por ruta

Para un bloqueo de granularidad fina: permitir un bot en una parte del sitio, bloquearlo en otra.

Ejemplo típico: permitir ClaudeBot en las fichas de producto (para que Claude las recomiende) pero bloquearlo en el blog (para no ceder su contenido editorial).

Una regla se compone de:

  • Bot — bot apuntado (o «todos los bots» mediante wildcard)
  • Acciónallow o disallow
  • Ruta — patrón URL con wildcard * y final de cadena $
  • Posición — orden de evaluación (las reglas más específicas primero)

Ejemplos de patrones:

  • /blog/* — cualquier URL que empiece por /blog/
  • /*.pdf$ — todos los archivos PDF
  • /order* — URLs de pedido
  • /module/dfsavecart/* — un módulo específico
Nota — Las reglas por ruta se añaden a robots.txt como directivas Allow: / Disallow: estándar, pero también dirigen el bloqueo HTTP 403 si está activado.

Bloqueo HTTP 403

Algunos bots ignoran voluntariamente robots.txt. El más conocido es Bytespider (ByteDance), junto con algunas versiones antiguas de anthropic-ai. Para estos bots, robots.txt no basta.

Active la opción «Activar bloqueo HTTP 403 para bots bloqueados» en Ajustes. El módulo instala entonces un hook actionDispatcherBefore que:

  1. Detecta el user-agent en cada petición entrante (comparación de cadenas en memoria, ~0.1 ms).
  2. Si el bot está en la lista de bloqueados y la petición coincide con una regla de bloqueo: devuelve inmediatamente HTTP 403 antes de cualquier inicialización PrestaShop.
  3. Registra el intento en la tabla ps_dfaicm_visit con el flag blocked = 1.
Consejo — El bloqueo HTTP ahorra CPU y recursos de base de datos para los bots de mayor volumen. Bytespider puede representar varios miles de hits por día en una tienda promedio.

Estadísticas e importación de logs

La pestaña Estadísticas ofrece una vista a 7, 30 o 90 días con:

  • KPI globales (visitas totales, bots distintos, hits bloqueados)
  • Gráfico de tráfico diario
  • Top bots por volumen
  • Top URLs visitadas
  • Registro de las 50 visitas más recientes (fecha, bot, URL, IP, estado)

Seguimiento en tiempo real

Si está activado en Ajustes, cada petición se inspecciona y los hits de bots IA identificados se registran. El sobrecoste es despreciable: menos del 1 % del tráfico llega a la fase de escritura.

Importación de logs Apache/Nginx

Permite contar retroactivamente las visitas IA, incluso las anteriores a la instalación del módulo.

  1. En Ajustes, introduzca la ruta del archivo de log. El módulo ofrece auto-detección (rutas comunes Apache, Nginx, o2switch, cPanel).
  2. Elija el formato (combined por defecto, o common).
  3. En la pestaña Estadísticas, haga clic en Analizar log ahora.

El análisis es incremental: un offset en bytes se almacena en la base de datos. Volver a ejecutar la operación no crea duplicados. El módulo limita cada ejecución a 8 MB para evitar timeouts; para archivos muy grandes, varias pasadas sucesivas son suficientes.

Para empezar de cero (por ejemplo tras una rotación de log), marque Resetear offset en Ajustes y vuelva a lanzar el análisis.

Ajustes

Resumen de las opciones disponibles:

robots.txt

  • Auto-regeneración: regenera robots.txt automáticamente cuando un bot o regla cambia
  • Crawl-delay: retraso recomendado entre peticiones (0 = desactivado, 1-120 segundos)
  • URL del sitemap: añadida al final de la sección gestionada
  • Sección global Disallow: añade también una sección User-agent: * bloqueando áreas sensibles (admin, carrito, login)

Bloqueo HTTP

  • Activar bloqueo HTTP 403: devuelve inmediatamente 403 para los bots bloqueados (ver sección dedicada)

Seguimiento en tiempo real

  • Activar seguimiento: registra cada visita IA detectada
  • Retención: número de días de conservación de las visitas individuales (7 a 730, por defecto 90). Los agregados diarios se conservan más tiempo.

Importación de logs

  • Activar análisis de logs: activa el botón de importación en la pestaña Estadísticas
  • Ruta del archivo: ruta absoluta, con auto-detección propuesta
  • Formato: combined (Apache/Nginx por defecto) o common
  • Resetear offset: marcar para releer el archivo entero

Estrategias de bloqueo recomendadas

La elección depende de su posicionamiento editorial y comercial. Tres perfiles típicos:

Tienda e-commerce estándar (recomendación por defecto)

Aplique el preajuste «Bloquear solo entrenamiento». Los bots de entrenamiento (GPTBot, ClaudeBot, anthropic-ai, CCBot, Bytespider) están bloqueados. Los bots de asistencia en tiempo real (ChatGPT-User, Claude-User) y de búsqueda IA (OAI-SearchBot, PerplexityBot, Google-Extended) permanecen permitidos: sus productos siguen pudiendo ser recomendados en ChatGPT, Claude, Perplexity y Google AI Overviews.

Marca premium / contenido editorial fuerte

Preajuste «Estricto» + reglas por ruta para permitir ciertas zonas. Ejemplo: bloquear todos los bots IA en todas partes, salvo /producto/* permitido para ChatGPT-User y Claude-User. Sus descripciones de producto siguen referenciadas en los asistentes, su blog y sus guías están protegidos.

Tienda en fase de lanzamiento / poco contenido editorial

Preajuste «Permitir todo». La visibilidad en los motores de respuesta IA supera ampliamente el riesgo de cesión de contenido. Cambiará a un bloqueo más estricto cuando su catálogo y blog ganen valor.

Mantenimiento

Purga automática

Las visitas individuales más antiguas que la retención configurada se eliminan automáticamente en cada análisis de logs. También puede activar una purga manual desde la pestaña Estadísticas (botón «Purgar visitas antiguas»).

Copia de seguridad de robots.txt

Cada escritura crea un robots.txt.bak al lado del archivo original. En caso de error, puede restaurarlo manualmente por FTP o vía cPanel.

Actualización de la lista de bots

Los nuevos bots IA se añaden mediante las actualizaciones del módulo. La tabla ps_dfaicm_bot se actualiza en modo «merge»: un bot que ha personalizado manualmente nunca se sobrescribe.

Solución de problemas

robots.txt no es escribible

El panel muestra un badge rojo «Not writable». Verifique:

  • Permisos del archivo /robots.txt: deben ser 644 mínimo, y el propietario debe ser el usuario PHP/Apache
  • Si el archivo no existe, verifique los permisos del directorio raíz (755 + propietario correcto)
  • En algunos hosting compartidos, robots.txt se genera dinámicamente por PrestaShop: desactive la opción correspondiente en Preferencias › Tráfico › SEO y URLs

La auto-detección del log de acceso no encuentra nada

El módulo busca en las siguientes rutas: /var/log/apache2/access.log, /var/log/nginx/access.log, ~/logs/, ~/access-logs/. En otros hosting, introduzca la ruta manualmente. Si no la conoce, contacte con el soporte de su hosting o consulte la documentación de su panel de control.

El análisis de logs tarda demasiado

El módulo limita cada ejecución a 8 MB para evitar timeouts PHP. Para un archivo de 500 MB, espere de 60 a 70 pasadas. Cada clic en «Analizar log ahora» reanuda donde se detuvo el anterior gracias al offset almacenado.

Un bot bloqueado sigue apareciendo en las estadísticas

Es normal: el seguimiento en tiempo real registra TODAS las visitas IA detectadas, incluidas las bloqueadas (con el flag was_blocked = 1). Esto le permite medir cuántos intentos su configuración está bloqueando efectivamente.

Un bot ignora robots.txt a pesar de mi regla

Confirme con una importación de logs: si sigue viendo hits con estado 200, el bot realmente ignora robots.txt. Active el bloqueo HTTP 403 en Ajustes. A partir de ese momento, los hits del bot aparecerán con estado 403 y flag was_blocked = 1.

Desinstalación

Desde Módulos › Gestor de módulos, haga clic en Desinstalar en la ficha del módulo. La operación:

  • Elimina las 5 tablas ps_dfaicm_*
  • Elimina las 6 pestañas de administración
  • Retira la sección gestionada de robots.txt (los marcadores centinela y todo lo que delimitan)
  • Preserva el resto de robots.txt y el archivo robots.txt.bak

Referencia técnica

  • Slug técnico: dfaicrawlermanager
  • Namespace: DataFirefly/AiCrawlerManager
  • Tablas creadas: ps_dfaicm_bot, ps_dfaicm_rule, ps_dfaicm_category_rule, ps_dfaicm_visit, ps_dfaicm_visit_daily
  • Hooks utilizados: actionDispatcherBefore, actionAdminControllerSetMedia, displayBackOfficeHeader
  • Pestañas back-office: Dashboard, Bots, Path rules, Builder, Statistics, Settings (bajo AdminParentConfigure)
  • Claves de configuración: DFAICM_AUTO_REGEN, DFAICM_VISIT_LOG, DFAICM_HTTP_BLOCK, DFAICM_LOG_PARSING, DFAICM_LOG_PATH, DFAICM_LOG_FORMAT, DFAICM_LAST_PARSE, DFAICM_LAST_OFFSET, DFAICM_RETENTION, DFAICM_CRAWL_DELAY, DFAICM_SITEMAP_URL, DFAICM_GLOBAL_DISALLOW, DFAICM_INSTALLED_AT

Soporte

Para cualquier pregunta técnica, contacte con el equipo DataFirefly en contact@datafirefly.com o consulte su área de cliente en datafirefly.com.

¿Te ha resultado útil esta página?

¿Sigues atascado? Contacta con soporte