🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Solución: Error 500 en PrestaShop después de mover archivos

Actualizado el 15 de enero de 2026

¡Vaya! Acabas de mover tu tienda PrestaShop a un nuevo servidor, a una carpeta distinta o has restaurado una copia de seguridad y, de repente, te encuentras con la temida pantalla blanca o el mensaje "Error 500".

Respira hondo. No has roto nada irreparable. Este es uno de los contratiempos más comunes al trabajar con PrestaShop, y la buena noticia es que, en la mayoría de los casos, tiene una solución sencilla que puedes aplicar tú mismo sin necesidad de ser un experto en programación.

En esta guía completa y paso a paso, vamos a desglosar las causas más frecuentes de este error y, lo más importante, cómo solucionar el error 500 en PrestaShop después de mover archivos. Olvídate del pánico; vamos a arreglarlo juntos.

¿Por qué aparece el Error 500 después de mover archivos?

Antes de lanzarnos a la acción, es útil entender qué está pasando. El error 500 es un mensaje genérico del servidor que indica que algo falló internamente, pero no te dice exactamente qué. Es como si tu coche no arrancara: puede ser la batería, el motor de arranque o que no tiene gasolina.

Cuando mueves archivos de PrestaShop, normalmente se rompen tres cosas:

  1. Las rutas absolutas: PrestaShop guarda la ubicación exacta de sus archivos en el servidor. Si cambias la carpeta raíz, esas rutas ya no son válidas.
  2. Los permisos de archivos: Al copiar o mover archivos, los permisos (quién puede leer, escribir o ejecutar) pueden cambiar y volverse demasiado restrictivos o demasiado permisivos.
  3. El caché y las variables de configuración: PrestaShop guarda configuraciones en archivos de caché. Si estos archivos se quedan "viejos", pueden apuntar a lugares que ya no existen.

Vamos a atacar cada uno de estos puntos en orden de probabilidad y facilidad.

Solución Rápida: Activa el Modo Depuración (Debug)

El primer paso no es adivinar, es hacer que PrestaShop nos diga cuál es el problema. Por defecto, el error 500 es mudo, pero podemos hacer que hable.

Paso 1: Accede al archivo de configuración

Necesitas un administrador de archivos (como el de tu panel de control o un cliente FTP como FileZilla). Busca la carpeta raíz de tu instalación de PrestaShop. Ahí encontrarás un archivo llamado config (es una carpeta) y dentro de ella, uno llamado defines.inc.php.

Paso 2: Edita el archivo

Abre config/defines.inc.php con un editor de texto plano (como el Bloc de notas o Sublime Text). Busca la siguiente línea:

define('_PS_MODE_DEV_', false);

Cámbiala a:

define('_PS_MODE_DEV_', true);

[INFO] Este cambio activa el modo de desarrollo de PrestaShop. Ahora, en lugar del error 500 genérico, verás una pantalla con el error específico, como "Tabla no encontrada" o "Archivo no encontrado". Esto te dará una pista clave sobre qué está fallando.

Paso 3: Recarga tu tienda

Vuelve a cargar tu tienda. Ahora verás un mensaje de error detallado. Anota el mensaje exacto. ¿Dice algo sobre config/settings.inc.php? ¿Sobre permisos? ¿Sobre una tabla de la base de datos?

Una vez que hayas anotado el error, vuelve a poner define('_PS_MODE_DEV_', false); para evitar mostrar información sensible a tus clientes.

Solución Clásica: Corregir los Permisos de Archivos y Carpetas

Si el error no es específico o simplemente quieres probar la solución más común, vamos a por los permisos. Después de una migración, es muy habitual que los permisos se hayan quedado en 644 para archivos y 755 para carpetas, pero con valores incorrectos.

¿Cómo se hace?

  1. Conéctate a tu servidor vía FTP o usa el administrador de archivos de tu hosting.
  2. Selecciona todos los archivos y carpetas de la raíz de PrestaShop.
  3. Busca la opción de "Permisos", "CHMOD" o "Atributos".
  4. Debes establecer los siguientes valores:
    • Carpetas (Directorios): 755
    • Archivos: 644

[WARNING] No uses permisos 777 (todos pueden escribir) en producción. Es un riesgo de seguridad grave. Si tu servidor te lo pide, es mejor que consultes con tu proveedor de hosting. El estándar es 755 y 644.

Pasos más finos

Si después de esto sigue fallando, presta atención a estas carpetas específicas, que necesitan permisos de escritura (a menudo 755 o 775):

  • /cache
  • /log
  • /img
  • /mails
  • /modules
  • /themes
  • /var (en versiones nuevas) o /app/cache (en versiones antiguas)
  • /config

Asegúrate de que el usuario del servidor web (a menudo www-data o el usuario de tu cuenta de hosting) pueda escribir en estas carpetas. Si no sabes cómo hacerlo, contacta con tu soporte de hosting.

Solución Muy Frecuente: Limpiar el Caché de PrestaShop

El caché es un villano silencioso. Después de mover archivos, el caché antiguo puede estar apuntando a rutas que ya no existen, provocando el error 500.

Limpieza manual (sin acceso al panel)

  1. Conecta por FTP.
  2. Navega a la carpeta /var/cache (si usas PrestaShop 1.7 o superior) o /cache (si usas 1.6 o inferior).
  3. Dentro de esta carpeta, encontrarás subcarpetas como dev, prod o class_index.php. Borra todo el contenido de la carpeta cache o var/cache, pero no borres la carpeta en sí.
  4. Si no puedes borrar un archivo, renómbralo (por ejemplo, class_index.php.bak). A veces el servidor bloquea el borrado, pero renombrarlo es suficiente.

[TIP] Si tienes acceso a Syspanel (el panel de control de tu hosting, accesible en el puerto 2106), busca la opción de "Limpiar caché" o "Borrar caché del sitio". Es la forma más rápida y limpia.

Solución Definitiva: Corregir las Rutas en la Base de Datos

Este es el paso más técnico, pero es la causa número uno del error 500 PrestaShop mover archivos. PrestaShop guarda la URL y la ruta física del servidor en su base de datos. Si las has cambiado, hay que actualizarlas.

¿Cómo acceder a la base de datos?

  1. Ve a tu panel de control de hosting (Syspanel, en el puerto 2106).
  2. Busca la sección de "Bases de datos" o "MySQL".
  3. Abre phpMyAdmin (o la herramienta equivalente).
  4. Selecciona la base de datos de tu PrestaShop.

¿Qué tablas modificar?

Necesitas buscar y reemplazar en dos tablas principalmente:

  • ps_shop_url (o prestashop_shop_url): Aquí se guardan las URLs de tu tienda.
  • ps_configuration (o prestashop_configuration): Aquí se guardan las rutas absolutas.

El proceso de actualización

  1. En ps_shop_url, haz clic en "Examinar" (o "Browse").
  2. Verás una fila con tu dominio. Si el dominio es incorrecto (por ejemplo, una IP del servidor antiguo), edítalo y pon el nuevo dominio correcto. Guarda los cambios.
  3. Ahora ve a la pestaña "SQL" en phpMyAdmin.

[WARNING] Antes de ejecutar cualquier consulta SQL, haz una copia de seguridad de tu base de datos. Un error aquí puede romper todo. Te recomiendo exportar la base de datos completa antes de seguir.

La consulta mágica

Ejecuta esta consulta SQL, pero cambia tudominio.com por tu dominio real y la_ruta_antigua por la ruta del servidor anterior (si la conoces). Es más común cambiar solo el dominio.

UPDATE ps_shop_url SET domain = 'tudominio.com', domain_ssl = 'tudominio.com' WHERE id_shop_url = 1;

Para la ruta física (ej. /home/usuario/public_html/tienda), ejecuta:

UPDATE ps_configuration SET value = REPLACE(value, 'ruta/antigua', 'ruta/nueva') WHERE value LIKE '%ruta/antigua%';

[TIP] Si no sabes cuál era la ruta antigua, no te preocupes. Puedes encontrar la ruta actual de tu servidor creando un archivo PHP en la raíz con este contenido:

<?php echo __DIR__; ?>

Súbelo como ruta.php, ábrelo en el navegador (ej. tudominio.com/ruta.php) y te mostrará la ruta exacta. Después, bórralo por seguridad.

Solución para Errores Específicos

A veces, el error 500 viene acompañado de un mensaje más concreto. Veamos dos casos comunes.

Error: "Class 'Module' not found" o "Archivo no encontrado"

Esto suele pasar porque la carpeta /modules o /themes se movió incorrectamente o tiene permisos inapropiados.

Solución: Verifica que la carpeta /modules esté en la raíz de tu PrestaShop y que todos los submódulos tengan al menos permisos 755. Si has movido archivos uno a uno, es fácil que te dejes una carpeta atrás. Compara la estructura de archivos con la copia original.

Error: "Unable to write to cache" o "Permission denied"

Este error es 100% un problema de permisos, como mencionamos antes. La carpeta /var/cache o /cache no tiene permisos de escritura para el servidor.

Solución: Cambia los permisos de la carpeta cache y sus subcarpetas a 755. Si no funciona, pruébalo con 775. En casos muy raros de servidores Windows, puede necesitar 777, pero evítalo si puedes.

Prevención: ¿Cómo evitar el error 500 en futuras migraciones?

Una vez que hayas arreglado el error 500, toma nota para la próxima vez. La migración de PrestaShop no tiene por qué ser un dolor de cabeza.

  1. Usa siempre el modo mantenimiento: Antes de tocar nada, activa el modo mantenimiento en tu tienda para que los clientes no vean los errores mientras trabajas.
  2. Haz una copia de seguridad completa: No solo de los archivos, sino también de la base de datos. Es tu red de seguridad.
  3. Usa una herramienta de migración: Si es posible, usa el módulo "PrestaShop Migrator" o herramientas similares. Automatizan el cambio de URLs y rutas, evitando errores manuales.
  4. Mantén las versiones: Si estás moviendo de un servidor a otro, intenta que la versión de PHP y MySQL sean lo más parecidas posible. Un cambio de versión de PHP puede provocar errores de compatibilidad con módulos.

Conclusión

El error 500 en PrestaShop después de mover archivos es un rito de iniciación para cualquier administrador de tiendas. Es frustrante, pero rara vez es un problema mortal. Siguiendo estos pasos en orden (activar debug, corregir permisos, limpiar caché y actualizar la base de datos), tendrás una probabilidad altísima de solucionarlo en menos de una hora.

Recuerda que la paciencia es tu mejor aliada. Ve paso a paso, sin saltarte ninguno, y sobre todo, no olvides hacer copias de seguridad antes de cada cambio importante.

Si aun así el error persiste, puede que el problema sea más profundo (como un módulo incompatible o un problema en el servidor). En ese caso, no dudes en contactar con tu proveedor de hosting o con un desarrollador especializado en PrestaShop. Pero con esta guía, ya has recorrido el 90% del camino. ¡Mucho éxito con tu tienda!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel