# DataFirefly Staging Pro — Guía completa

> Staging Pro crea una copia completa de su tienda (archivos y base de datos) para probar módulos, temas y actualizaciones sin riesgo, y después publicar sus cambios en producción. Desde…

- Página: <https://www.datafirefly.com/es/documentation/dfstagingpro/>
- Idioma: es
- Actualizado el: 2026-11-01
- Otros idiomas: [fr](https://www.datafirefly.com/documentation/dfstagingpro/index.md), [en](https://www.datafirefly.com/en/documentation/dfstagingpro/index.md), [de](https://www.datafirefly.com/de/documentation/dfstagingpro/index.md), [it](https://www.datafirefly.com/it/documentation/dfstagingpro/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfstagingpro/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfstagingpro/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfstagingpro/index.md)
- Índice: <https://www.datafirefly.com/es/documentation/llms.txt>

Staging Pro crea una copia completa de su tienda (archivos y base de datos) para probar módulos, temas y actualizaciones sin riesgo, y después publicar sus cambios en producción. Desde la versión 2.0.0, el espacio en disco se comprueba antes y durante la copia: la copia ya no puede llenar el disco de su alojamiento. Esta guía cubre la instalación, el asistente de creación, la seguridad del espacio en disco, la protección del staging, la publicación en producción, las copias de seguridad y la resolución de problemas.

## Instalación y actualización

1. Descargue `dfstagingpro-2.0.0.zip` desde su cuenta de DataFirefly.
2. Back office de PrestaShop → **Módulos** → **Gestor de módulos** → **Subir un módulo**, y envíe el ZIP.
3. Abra **Parámetros avanzados → Staging Pro**.

Para actualizar desde la versión 1.x, basta con subir el nuevo ZIP. La actualización añade las nuevas columnas, los nuevos hooks y los ajustes predeterminados, y elimina de los registros antiguos las contraseñas HTTP que figuraban en texto plano. Sus stagings existentes siguen en la lista, con una insignia "1.x", y se pueden gestionar: actualizar, publicar en producción, deshacer, eliminar.

Compatible con PrestaShop 8.0 a 9.x. PHP debe poder escribir en la carpeta de la tienda y el usuario de MySQL debe tener los permisos CREATE, DROP, ALTER e INSERT, algo habitual en una instalación estándar. Sin dependencias de Composer.

## El panel de control

La página del módulo muestra arriba cinco indicadores: número de entornos, espacio usado por los stagings, espacio libre en disco, duración de la última copia y copias de seguridad de publicación. Las pestañas dan acceso a los entornos, al asistente de creación, a las copias de seguridad y a los ajustes.

Cada entorno se presenta en una ficha: dirección del staging, carpeta, prefijo de las tablas, tamaño (archivos y base de datos), fecha y duración de la última copia, insignias de protección, usuario y contraseña HTTP (oculta, con los botones Mostrar y Copia) y enlace de acceso privado. Las acciones disponibles son Abrir, Actualizar, Publicar en producción, Deshacer la última publicación, Registro y Eliminar.

![Lista de entornos de staging de PrestaShop con tamaño, protecciones, accesos y acciones](https://www.datafirefly.com/wp-content/uploads/2026/11/lista-entornos-staging-stagingpro-es.webp)

Lista de entornos

Una copia fallida sigue visible con el motivo del fallo, por ejemplo la falta de espacio en disco, y la confirmación de que la copia parcial se ha eliminado. El botón **Reintentar** vuelve a ejecutar las comprobaciones previas y después la copia.

## Crear un staging: el asistente de 4 pasos

### Paso 1: ubicación

Introduzca un nombre (minúsculas, dígitos y guiones, por ejemplo `v2`). La dirección del staging se muestra en directo. Después elija:

- **Subcarpeta de su tienda** (recomendado): el staging se crea en `/staging-nombre/`, sin nada que configurar.
- **Carpeta y dirección personalizadas (subdominio)**: para un subdominio como `staging.example.com`, creado antes en el panel de su alojamiento y que apunte a una carpeta vacía.
- **Misma base de datos, prefijo de tablas propio** (`dfs1_`, `dfs2_`…), o **Base de datos independiente en el mismo servidor**, que debe crearse antes y abrirse al usuario MySQL de la tienda.

![Asistente de nuevo staging: subcarpeta o subdominio, misma base de datos o base distinta](https://www.datafirefly.com/wp-content/uploads/2026/11/asistente-nuevo-staging-ubicacion-stagingpro-es.webp)

Asistente de nuevo staging

### Paso 2: datos y protección

- **Omitir los datos estadísticos** (marcado por defecto): las visitas, conexiones y registros no se copian y las tablas se crean vacías.
- **Omitir los datos de clientes (RGPD)**: no se copian clientes, direcciones, pedidos, carritos ni mensajes.
- **Compartir las imágenes con la tienda en producción**: la carpeta `img/` se enlaza en lugar de copiarse. Gran ahorro de espacio, pero una imagen modificada en el staging también se modifica en la tienda en producción.
- **Contraseña HTTP** (Apache, LiteSpeed), **Enlace de acceso privado** (todos los servidores, nginx incluido) y **Modo mantenimiento**.
- **Pagos**: los módulos de pago en línea se desactivan en el staging. Los métodos sin conexión (transferencia, cheque, contrarreembolso) siguen disponibles para hacer pedidos de prueba.
- **Módulos sensibles**: los módulos activos de la lista (tareas cron, sincronizaciones de ERP o newsletter, seguimiento, facturación recurrente) se proponen para desactivarse, solo en el staging.

Tres protecciones están siempre activas: `noindex`, bloqueo de todos los correos electrónicos y banner de STAGING.

![Opciones del staging: datos de clientes, contraseña, enlace privado, pagos y módulos sensibles desactivados](https://www.datafirefly.com/wp-content/uploads/2026/11/opciones-datos-proteccion-staging-stagingpro-es.webp)

Datos y protección

### Paso 3: comprobaciones previas

El módulo analiza su tienda: los archivos se miden sin leerse, lo que tarda unos segundos incluso en una tienda grande, y después el tamaño de la base de datos se lee en `information_schema`. El informe muestra:

- el espacio en disco necesario y disponible, con un indicador (tamaño de la copia, margen de seguridad, espacio que se deja libre para la tienda);
- el espacio del disco de la base de datos, cuando el servidor MySQL es local y medible;
- el tamaño estimado (archivos y base de datos) y, si ya se ha medido una copia en su tienda, la duración estimada;
- las comprobaciones: nombre, permisos de escritura, permisos de MySQL, límites de PHP, extensiones, servidor web;
- las carpetas más grandes, que puede excluir con un clic, y sugerencias para ahorrar espacio.

![Comprobaciones previas a la copia de staging: espacio en disco, base de datos, límites PHP y tamaño estimado](https://www.datafirefly.com/wp-content/uploads/2026/11/comprobaciones-previas-staging-espacio-stagingpro-es.webp)

Comprobaciones previas a la copia

### Paso 4: copia

Haga clic en **Crear el staging**. La copia se inicia y su progreso se muestra en la ficha del entorno (véase "Seguir la copia en directo").

## Espacio en disco: cómo el módulo protege su tienda

El staging se crea en el mismo disco que su tienda. Un disco lleno puede bloquear la tienda en producción: caché, sesiones, subida de archivos, facturas. Por eso Staging Pro aplica tres protecciones.

1. **Antes de la copia**: el espacio necesario se calcula así: tamaño de los archivos que se copian (excluidos cachés, registros, sesiones, copias de seguridad y otros stagings) + tamaño de la base de datos + margen de seguridad (10 %, 50 MB como mínimo) + espacio que siempre se deja libre para la tienda (500 MB por defecto). Si el espacio libre no basta, la copia se rechaza con tres cifras: necesario, disponible y faltante. La comprobación se repite al iniciar la copia.
2. **Durante la copia**: el espacio libre se vuelve a medir de forma continua. La copia se detiene antes de bajar del espacio reservado para la tienda. Cada escritura se controla: un disco lleno, en archivos o en MySQL, detiene la copia con un mensaje claro.
3. **Tras un fallo o una detención**: la copia parcial (carpeta y tablas) se elimina automáticamente. No queda nada en el disco ni en la base de datos, y la tienda en producción nunca se modifica.

![Espacio en disco insuficiente: copia bloqueada con espacio necesario, disponible y faltante, y sugerencias](https://www.datafirefly.com/wp-content/uploads/2026/11/espacio-disco-insuficiente-staging-stagingpro-es.webp)

Espacio en disco insuficiente

Cuando falta espacio, el informe propone soluciones con cifras: compartir las imágenes, omitir las estadísticas o los datos de clientes, excluir una carpeta grande, vaciar la caché (botón), eliminar los registros antiguos de `var/logs`, eliminar stagings antiguos o copias de seguridad de publicación antiguas.

En algunos alojamientos compartidos, la función PHP `disk_free_space` está desactivada y no se puede medir el espacio libre. El módulo lo indica claramente, muestra el tamaño aproximado de la copia y le pide marcar una confirmación tras comprobar el espacio en el panel de su alojamiento. Los fallos de escritura se siguen detectando y limpiando.

## Seguir la copia en directo

Durante la copia, la ficha del entorno muestra:

- las etapas: comprobaciones previas, preparación, archivos, base de datos, URL, protección, verificación;
- una barra de progreso;
- el número de archivos y de bytes copiados;
- las tablas clonadas;
- el tiempo transcurrido y el tiempo restante, estimado a partir del avance real;
- las últimas líneas del registro.

El botón **Detener** interrumpe la copia y elimina la copia parcial.

![Progreso en directo de la copia de staging: pasos, archivos, tiempo transcurrido y restante, registro en directo](https://www.datafirefly.com/wp-content/uploads/2026/11/progreso-copia-staging-stagingpro-es.webp)

Progreso de la copia en directo

La copia avanza por lotes de unos segundos: sin tiempo de espera agotado, incluso con un `max_execution_time` bajo. Si cierra la página, la copia se pausa y se reanuda al reabrir el panel, exactamente donde se había detenido.

## Protección del staging

- **Noindex**: cabecera `X-Robots-Tag` enviada por PHP en todas las páginas (funciona incluso sin `mod_headers` y con nginx), etiqueta meta `noindex` y `robots.txt`.
- **Ningún correo sale**: `PS_MAIL_METHOD = 3` y bloqueo por el módulo de cualquier envío, incluso si alguien reactiva el SMTP en el staging. El banner del back office del staging muestra el número de correos bloqueados.
- **Contraseña HTTP** (usuario `staging`), generada o elegida, en formato APR1 que leen Apache y LiteSpeed. Una autocomprobación al final de la copia verifica que el servidor responde 401 sin credenciales.
- **Enlace de acceso privado**: sin el enlace secreto, los visitantes ven una página de "staging privado". El enlace establece una cookie válida durante 30 días.
- Pagos en línea y módulos sensibles desactivados, y banner de STAGING en el front office y el back office.

## Actualizar, reintentar, eliminar

- **Actualizar**: reconstruye el staging a partir del estado actual de la tienda. Una ventana muestra primero las comprobaciones previas. Se tiene en cuenta el espacio liberado al eliminar la copia anterior. Si falta espacio, la actualización no se inicia y se conserva la copia actual.
- **Reintentar**: reinicia una copia fallida, tras nuevas comprobaciones previas.
- **Eliminar**: elimina la carpeta y las tablas del staging. Fuera de la carpeta de la tienda, solo se elimina una carpeta que lleve la marca del entorno.

## Publicar en producción

El botón **Publicar en producción** abre la lista de tablas del staging, agrupadas por categoría: catálogo, contenido y diseño, módulos, clientes y pedidos, otros. Para cada tabla se ve el número de filas del staging y de la tienda. Un buscador y el filtro "Solo las tablas que difieren" facilitan la selección.

![Publicación de las tablas elegidas del staging en producción, intercambio atómico y copia de seguridad automática](https://www.datafirefly.com/wp-content/uploads/2026/11/publicar-staging-en-produccion-stagingpro-es.webp)

Publicación en producción

Las tablas elegidas se copian primero aparte, reescribiendo las URL del staging a las de la tienda. Después se intercambian en una única operación atómica (`RENAME TABLE`): la tienda nunca ve una tabla vacía o a medio llenar. Las tablas sustituidas se conservan como copia de seguridad (`dfbak…`). Si la publicación falla antes del intercambio, las tablas temporales se eliminan y la tienda no se toca.

Evite publicar las tablas de clientes y pedidos si la tienda ha seguido recibiendo pedidos desde la copia: sustituirían los pedidos recientes. Las tablas críticas (`shop_url`, `configuration`, `shop`, sesiones) nunca se pueden publicar.

## Copias de seguridad y deshacer

La pestaña **Copias de seguridad** lista las copias creadas por las publicaciones, con su fecha, número de tablas, tamaño y el entorno afectado. El botón **Deshacer la última publicación**, en la ficha del entorno, restaura las tablas originales. Elimine las copias de seguridad que ya no necesite para liberar espacio en la base de datos.

![Copias de seguridad de las publicaciones: deshacer la última o eliminar las antiguas](https://www.datafirefly.com/wp-content/uploads/2026/11/copias-seguridad-publicacion-stagingpro-es.webp)

Copias de seguridad de las publicaciones

## Registro

Cada entorno tiene su registro, en el idioma del empleado: comprobaciones previas, etapas, avisos, errores y limpiezas. Un filtro muestra solo los avisos y los errores. El botón **Descargar (.txt)** exporta el registro completo con una cabecera útil para el soporte (versiones, direcciones, espacio libre). Las contraseñas nunca aparecen en el registro.

![Registro legible y descargable de un entorno de staging](https://www.datafirefly.com/wp-content/uploads/2026/11/registro-staging-descargable-stagingpro-es.webp)

Registro del entorno

## Ajustes

- **Espacio libre que se mantiene siempre para la tienda en producción** (500 MB por defecto): la copia se rechaza, o se detiene, antes de bajar de este valor.
- **Margen de seguridad sobre la estimación**, que se añade a la estimación (10 %, 50 MB como mínimo).
- **Duración de un lote** (6 segundos por defecto, de 2 a 25).
- **Carpetas o archivos adicionales que excluir**, además de las exclusiones automáticas (cachés, registros, sesiones, copias de seguridad del back office, otros stagings).
- **Módulos sensibles** propuestos para desactivarse en el staging.

![Ajustes: espacio libre reservado para la tienda, margen de seguridad, duración de los lotes, exclusiones](https://www.datafirefly.com/wp-content/uploads/2026/11/ajustes-staging-seguridad-disco-stagingpro-es.webp)

Ajustes

## Staging sin datos de clientes

Con la opción **Omitir los datos de clientes (RGPD)**, las tablas de clientes, pedidos, carritos, mensajes, invitados, newsletter y registros RGPD se crean vacías. Se conservan las direcciones de proveedores, fabricantes y almacenes, así como las tablas de configuración de pedidos (estados, plantillas de mensajes, estados de devolución) y todo el catálogo. Es la opción recomendada para entregar un staging a un proveedor externo. En un staging así, las tablas de clientes y pedidos se retiran de la lista de publicación y el servidor las rechaza: una tabla vacía nunca puede sobrescribir la producción.

## Permisos y seguridad

- Las acciones siguen los permisos de la pestaña **Parámetros avanzados → Staging Pro**: ver, añadir (crear), modificar (copiar, publicar, deshacer, ajustes) y eliminar. Un empleado de solo lectura no ve ni las contraseñas ni los botones de acción.
- Todas las acciones se bloquean si la tienda actual es a su vez un staging.
- Los archivos `parameters.php`, `.env` y `.htpasswd` del staging no son accesibles desde la web.

## Preguntas frecuentes y resolución de problemas

**¿Qué ocurre si mi disco no tiene suficiente espacio?** La copia se rechaza antes de empezar, con el espacio necesario, disponible y faltante, y soluciones para ahorrar espacio. Si el espacio desaparece durante la copia, esta se detiene antes de llenar el disco y la copia parcial se elimina automáticamente.

**Mi proveedor desactiva disk_free_space, ¿puedo usar el módulo?** Sí. El módulo muestra el tamaño aproximado de la copia y pide una confirmación. Los fallos de escritura se siguen detectando y limpiando.

**La copia se interrumpió (página cerrada, corte de red).** Vuelva a abrir el panel: la copia se reanuda donde se había detenido.

**Mi servidor usa nginx: la contraseña HTTP no funciona.** nginx ignora los archivos `.htaccess`. Utilice el enlace de acceso privado, que funciona en todos los servidores. La autocomprobación indica este caso en el registro.

**¿Puede el staging enviar correos a mis clientes?** No. Los correos siempre están bloqueados en el staging, incluso si alguien reactiva el SMTP.

**¿Puedo probar un pedido en el staging?** Sí: los pagos en línea están desactivados, pero la transferencia bancaria y el cheque siguen disponibles.

**Tras una publicación en producción, ¿cómo vuelvo atrás?** Use **Deshacer la última publicación** en la ficha del entorno y después elimine las copias de seguridad antiguas en la pestaña Copias de seguridad.

**¿Se conservan mis stagings creados en 1.x?** Sí. Siguen en la lista tras la actualización y se pueden actualizar, publicar en producción o eliminar.

**El staging responde 404 en todas partes en un alojamiento cPanel / LiteSpeed.** Actualice el módulo y después actualice el entorno: la contraseña se genera en formato APR1, compatible con LiteSpeed, y la página 401 se integra en el `.htaccess`.

## Historial de versiones

### 2.0.0 (1 de noviembre de 2026)

- Comprobación del espacio en disco antes de la copia (archivos, base de datos, margen, espacio reservado para la tienda), supervisión durante la copia, detección de disco lleno en archivos y en MySQL, limpieza automática de la copia parcial.
- Asistente de 4 pasos con informe de comprobaciones previas, exclusión de las carpetas más grandes y sugerencias.
- Progreso en directo por etapas, detención manual, reanudación tras una interrupción, registro traducido y descargable.
- Publicación atómica en producción, pestaña Copias de seguridad.
- Subdominio (carpeta y dirección personalizadas) y base de datos independiente.
- Enlace de acceso privado, `noindex` enviado por PHP, correos siempre bloqueados, módulos sensibles desactivados, métodos de pago sin conexión conservados.
- Permisos comprobados por acción, contraseñas eliminadas del registro, multitienda, traducciones en 8 idiomas.

### 1.1.0 (4 de septiembre de 2026)

- Opción "Omitir los datos de clientes".

### 1.0.1 (3 de septiembre de 2026)

- Contraseña HTTP en formato APR1-MD5, página 401 integrada, `ErrorDocument` reescrito, autocomprobación al final de la copia.

### 1.0.0 (11 de junio de 2026)

Primera versión pública.
