Cómo solucionar el error 'PrestaShop no carga imágenes' en DirectAdmin
¿Por qué PrestaShop no carga imágenes en tu servidor con DirectAdmin?
Si estás leyendo esto, probablemente te has encontrado con el molesto problema de que tu tienda online muestra recuadros en blanco, iconos rotos o directamente no se ven las fotos de tus productos. No te preocupes, es uno de los fallos más comunes en PrestaShop y, en la mayoría de los casos, tiene una solución sencilla que puedes aplicar tú mismo.
Cuando hablamos de PrestaShop no carga imágenes, el error suele estar relacionado con la configuración del servidor, los permisos de archivos o la caché de la propia tienda. Si tu hosting utiliza el panel de control DirectAdmin, hay una serie de pasos muy concretos que podemos seguir para diagnosticar y solucionar el problema.
En esta guía extensa y paso a paso, vamos a desglosar todas las causas posibles y sus soluciones, pensadas para que cualquier persona, incluso sin conocimientos técnicos avanzados, pueda resolver el error imágenes DirectAdmin y volver a tener su catálogo visual perfecto.
Diagnóstico inicial: ¿Cuál es el origen del problema?
Antes de empezar a tocar nada, es fundamental saber si el problema es general (no carga ninguna imagen) o parcial (solo algunas imágenes no se ven). Esto nos dará pistas sobre la causa raíz.
- Si no carga ninguna imagen: El problema suele estar en la configuración general del servidor, los permisos de la carpeta
imgo un error de mod_rewrite. - Si solo fallan algunas imágenes: Puede ser un problema de caché, de nombres de archivo con caracteres especiales o de que las imágenes se han subido de forma incorrecta.
Una forma rápida de comprobarlo es hacer clic derecho sobre una imagen rota y seleccionar "Abrir imagen en una pestaña nueva". Si el navegador te muestra un error como "404 Not Found" o "500 Internal Server Error", el problema es del servidor. Si te descarga un archivo extraño, el problema es de configuración de PHP.
Solución 1: Ajustar los permisos de las carpetas de imágenes (La causa más común)
El error PrestaShop no carga imágenes suele deberse, en un 80% de los casos, a permisos incorrectos en las carpetas donde se almacenan las fotos. DirectAdmin es muy estricto con esto y, a veces, al descomprimir una copia de seguridad o al mover archivos, los permisos se cambian.
¿Qué permisos necesita PrestaShop?
Las carpetas deben tener permiso de lectura y ejecución para todos, pero solo de escritura para el propietario. En términos de código, hablamos de permisos 755 para las carpetas y 644 para los archivos.
Pasos para corregir los permisos en DirectAdmin
- Accede a tu panel de DirectAdmin: Normalmente en
tudominio.com:2222. - Ve al apartado "Administrador de archivos" (File Manager).
- Navega hasta la raíz de tu instalación de PrestaShop, donde están las carpetas
img,themes,modules, etc. - Busca la carpeta
img. Haz clic derecho sobre ella y selecciona "Cambiar permisos". - Introduce el valor 755 y asegúrate de marcar la casilla "Aplicar a todos los subdirectorios y archivos". Esto es crucial.
- Haz clic en "Guardar" o "Aceptar".
[WARNING] No apliques permisos 777 (escritura para todos) en toda la carpeta. Aunque parezca que soluciona el problema rápido, es un grave agujero de seguridad que puede comprometer tu tienda. Úsalo solo de forma temporal si es estrictamente necesario y luego revierte los cambios.
Si el administrador de archivos de DirectAdmin no te deja hacer el cambio en masa, puedes usar el "Administrador de comandos" (si tu plan lo permite) o un cliente FTP como FileZilla. Con FileZilla, selecciona la carpeta img, clic derecho -> "Permisos de archivos" -> escribe 755 y marca "Recurse into subdirectories".
Solución 2: Limpiar la caché de PrestaShop y del navegador
Otra causa muy frecuente de que PrestaShop no carga imágenes es que la caché interna de la tienda se ha corrompido o está desactualizada. PrestaShop genera versiones en miniatura (thumbs) de tus imágenes y, si estas versiones están dañadas, las mostrará como rotas.
Pasos para limpiar la caché de PrestaShop
- Accede al Panel de Administración de tu PrestaShop (ej.
tudominio.com/admin123). - Ve al menú "Parámetros avanzados" -> "Rendimiento".
- En la parte superior, verás un botón que dice "Vaciar la caché". Haz clic en él.
- También puedes forzar la regeneración de miniaturas. Ve a "Parámetros avanzados" -> "Imágenes".
- Haz clic en el botón "Regenerar miniaturas". Ten en cuenta que este proceso puede tardar varios minutos si tienes muchas imágenes.
Limpiar la caché del navegador y DNS
A veces el problema no es el servidor, sino tu propio navegador que guarda una versión antigua de la página.
- Pulsa
Ctrl + F5en tu navegador para forzar una recarga sin caché. - Prueba en una ventana de incógnito para descartar extensiones o caché local.
[TIP] Si usas un plugin de caché como LiteSpeed Cache o un CDN (Cloudflare), debes purgar la caché también desde esas herramientas. A veces el error viene de ahí y no del servidor.
Solución 3: Configurar correctamente PHP y DirectAdmin
DirectAdmin a veces tiene una configuración de PHP que no es del todo compatible con PrestaShop, especialmente si usas versiones antiguas de PHP (5.6 o 7.0) con versiones nuevas de PrestaShop (1.7 u 8.x). Esto puede provocar errores de carga de imágenes.
Ajustar el límite de memoria y ejecución
- En tu panel de DirectAdmin, busca la sección "Configuración de PHP" o "Selector de versión de PHP".
- Asegúrate de tener una versión de PHP compatible (idealmente PHP 7.4 u 8.0+).
- Busca la opción
memory_limity cámbiala a al menos256Mo512M. - Busca
max_execution_timey ponlo a300(5 minutos) o más. Esto es vital para la regeneración de imágenes.
Activar la extensión GD o Imagick
PrestaShop necesita una librería de procesamiento de imágenes para crear las miniaturas. Sin ella, las imágenes no se muestran.
- En la misma sección de configuración de PHP, busca las extensiones.
- Asegúrate de que
gdoimagickestén activadas (marcadas). Si no lo están, actívalas y guarda los cambios.
[INFO] Si no encuentras estas opciones en DirectAdmin, deberás contactar con tu proveedor de hosting para que las active. No es algo que puedas hacer desde el File Manager.
Solución 4: Revisar el archivo .htaccess y la configuración de Friendly URLs
El error imágenes DirectAdmin también puede aparecer si el archivo .htaccess está dañado o si la reescritura de URLs (mod_rewrite) no funciona bien. PrestaShop usa este archivo para redirigir las peticiones de imágenes a las rutas correctas.
Regenerar el .htaccess desde PrestaShop
- Ve a "Parámetros avanzados" -> "Rendimiento".
- En la sección "URLs amigables", haz clic en "Guardar" (aunque no hayas cambiado nada). Esto fuerza a PrestaShop a regenerar el archivo
.htaccess.
Si el problema persiste, crea uno manualmente
A veces, el archivo se corrompe y no se regenera bien. Conéctate por FTP o File Manager, busca el archivo .htaccess en la raíz y renómbralo a .htaccess.bak. Luego, ve al panel de administración de PrestaShop y repite el paso anterior para que genere uno nuevo desde cero.
[WARNING] Antes de borrar el
.htaccess, asegúrate de tener una copia de seguridad. Si tu tienda tiene reglas personalizadas (redirecciones, cabeceras de seguridad, etc.), las perderás y tendrás que reescribirlas.
Solución 5: Comprobar la ruta de las imágenes en la base de datos
En casos más raros, el problema no es el archivo en sí, sino que la base de datos tiene rutas incorrectas. Esto suele pasar después de migrar la tienda de un servidor a otro.
- Accede a phpMyAdmin desde DirectAdmin.
- Abre la base de datos de tu PrestaShop.
- Busca la tabla
ps_image_shopops_product(el prefijops_puede variar). - No es recomendable editar esto a mano si no sabes lo que haces. En su lugar, usa el "Parámetros avanzados" -> "Base de datos" en PrestaShop y haz clic en "Comprobar y reparar la base de datos".
Solución 6: Verificar el espacio en disco y cuotas
Aunque parezca obvio, no tener espacio libre en el servidor puede causar que las imágenes no se suban o que no se muestren correctamente. DirectAdmin te muestra el uso de disco en el panel principal.
- Ve al panel de inicio de DirectAdmin.
- Revisa el medidor de "Uso de disco". Si estás al 100%, libera espacio (elimina copias de seguridad antiguas, logs, etc.) o contacta con tu proveedor para ampliar el plan.
Solución 7: Reinstalar o restaurar desde una copia de seguridad
Si has probado todo lo anterior y el error PrestaShop no carga imágenes continúa, puede que tengas un problema más profundo de corrupción de archivos. La solución definitiva es restaurar la tienda desde una copia de seguridad reciente que sepas que funcionaba.
- En DirectAdmin, ve a "Gestor de copias de seguridad".
- Restaura la copia de seguridad completa (archivos y base de datos) a un estado anterior al error.
- Si no tienes una copia, deberías considerar la opción de reinstalar PrestaShop y luego importar la base de datos, pero esto es un proceso más complejo que quizás requiera ayuda profesional.
Preguntas Frecuentes (FAQ) sobre el error de imágenes en PrestaShop y DirectAdmin
¿Por qué solo me pasa en el móvil?
Esto suele estar relacionado con la caché del móvil o con temas de compresión de imágenes. Prueba a limpiar la caché del navegador móvil. Si el problema persiste solo en móvil, podría ser un conflicto con el tema o con algún módulo de aceleración móvil.
¿Es seguro usar permisos 777?
No, rotundamente no. Usa 755 para carpetas y 644 para archivos. Los permisos 777 hacen que cualquier usuario del servidor pueda modificar tus archivos, lo que facilita la inyección de malware. Es el error más común que veo en tiendas comprometidas.
¿Qué pasa si uso un panel de control diferente, como Syspanel?
Si tu hosting usa Syspanel (el antiguo HestiaCP), el acceso se realiza a través del puerto 2106 (ej. tudominio.com:2106). La lógica es la misma que en DirectAdmin, pero la interfaz cambia. En Syspanel, busca el "Administrador de archivos" y sigue los mismos pasos para cambiar permisos y limpiar caché. La configuración de PHP suele estar en la sección de "Configuración del servidor" o "PHP".
He seguido todos los pasos y sigue sin funcionar. ¿Qué hago?
En ese caso, el problema puede estar en el servidor a nivel de Apache o Nginx. Te recomiendo que abras un ticket de soporte con tu proveedor de hosting y les copies este artículo, indicando los pasos que ya has seguido. Ellos podrán revisar los logs del servidor para ver el error exacto.
Conclusión final
Resolver el problema de PrestaShop no carga imágenes en DirectAdmin es, en la mayoría de los casos, un proceso de "descarte". Empieza siempre por los permisos de la carpeta img y la limpieza de caché, ya que son las soluciones más comunes y fáciles de aplicar. Si eso no funciona, revisa la configuración de PHP y el .htaccess.
Recuerda que la paciencia es clave. No toques varios ajustes a la vez, haz un cambio, prueba y pasa al siguiente si no funciona. Con esta guía detallada, tendrás todas las herramientas necesarias para solucionar el error imágenes DirectAdmin y volver a mostrar tus productos en todo su esplendor.
