Errores de permisos en PrestaShop: soluciones para Plesk
¡Hola! Soy tu técnico de soporte amigable. Si estás aquí, es porque probablemente te has topado con el temido mensaje de "error de permisos" en tu tienda PrestaShop alojada en un servidor con Plesk. No te preocupes, es un problema muy común y, como verás, tiene solución.
En este artículo, vamos a desglosar todo lo que necesitas saber sobre los permisos PrestaShop Plesk. Te explicaré por qué ocurren estos errores, cómo identificarlos y, lo más importante, cómo solucionarlos paso a paso. Usaremos comandos como chmod PrestaShop y te daremos trucos para que tu tienda funcione como un reloj.
Vamos a ello. Te prometo que al final de esta guía te sentirás mucho más seguro gestionando tu tienda.
¿Por qué aparecen los errores de permisos en PrestaShop?
Imagina que tu servidor es un edificio de oficinas. Cada archivo y carpeta de tu PrestaShop es una habitación con una puerta que tiene una cerradura. Esa cerradura tiene tres tipos de llaves: una para el dueño (tú), otra para el grupo de trabajo (el servidor web) y otra para el público (los visitantes). Los permisos son las reglas que deciden quién puede abrir la puerta (leer), quién puede entrar y mover muebles (escribir) y quién puede demoler la habitación (ejecutar).
En PrestaShop, cuando ves un error permisos PrestaShop, suele ser porque estas reglas no están bien configuradas. El servidor web (Apache o Nginx) intenta escribir un archivo de configuración, subir una imagen o generar una caché, pero se encuentra con la puerta cerrada. Esto es especialmente común después de:
- Migrar tu tienda a un nuevo servidor.
- Instalar o actualizar módulos.
- Cambiar la configuración de PHP o del panel de control (Plesk).
- Restaurar una copia de seguridad.
Plesk, aunque es un panel excelente, a veces aplica permisos demasiado restrictivos por seguridad. Por eso, necesitamos ajustarlos manualmente.
Identificando el problema: ¿Cómo saber si es un error de permisos?
Antes de lanzarnos a cambiar permisos a lo loco, asegurémonos de que ese es el problema. Los síntomas típicos incluyen:
- Errores al subir imágenes o archivos: "No se puede escribir en el directorio", "Error de carga".
- La tienda se ve en blanco (pantalla en blanco): Suele deberse a que la caché no se puede regenerar.
- Módulos que no se instalan o actualizan: "No se puede copiar el archivo".
- Errores 500 (Internal Server Error) en páginas concretas.
- Mensajes en el back office: "El directorio /cache no tiene permisos de escritura".
Si ves alguno de estos, es muy probable que la raíz del problema esté en los permisos de archivos y carpetas. No te asustes, vamos a solucionarlo.
Soluciones paso a paso para corregir permisos en PrestaShop (Plesk)
Aquí tienes las soluciones más efectivas, ordenadas de la más sencilla a la más avanzada. Recuerda siempre hacer una copia de seguridad antes de hacer cambios drásticos.
1. Establecer los permisos correctos con comandos SSH (La solución definitiva)
Esta es la forma más rápida y segura, especialmente si tienes acceso SSH a tu servidor. Usaremos el comando chmod PrestaShop para cambiar los permisos.
Paso 1: Accede a tu servidor por SSH
Necesitarás un cliente SSH (como PuTTY en Windows o la terminal en Mac/Linux). Conéctate con tu usuario y contraseña de root o de un usuario con privilegios.
Paso 2: Navega al directorio raíz de tu tienda
cd /var/www/vhosts/tudominio.com/httpdocs
Ajusta la ruta a la de tu instalación. Normalmente en Plesk es algo como /var/www/vhosts/tudominio.com/.
Paso 3: Aplica los permisos estándar de PrestaShop
Ejecuta estos comandos en orden. Te explico qué hace cada uno:
# 1. Establece el propietario de todos los archivos (reemplaza "usuario" por tu usuario de FTP/Plesk)
chown -R usuario:psacln .
# 2. Permisos para directorios (755: el dueño puede hacer de todo, los demás solo leer y ejecutar)
find . -type d -exec chmod 755 {} \;
# 3. Permisos para archivos (644: el dueño puede leer y escribir, los demás solo leer)
find . -type f -exec chmod 644 {} \;
# 4. Carpetas que necesitan permisos de escritura (777: todos pueden escribir, necesario para caché, imágenes, etc.)
chmod -R 777 cache/ config/ download/ img/ log/ mails/ module/ themes/default/lang/ translations/ upload/ export/ import/
[WARNING] ¡Cuidado! El último paso da permisos 777 a carpetas sensibles. Es necesario para que PrestaShop funcione, pero reduce la seguridad. Asegúrate de que tu servidor esté bien protegido (firewall, actualizaciones, etc.). En entornos de producción muy exigentes, se pueden usar permisos 755 y ajustar el grupo, pero para la mayoría de tiendas, 777 funciona.
Paso 4: Limpia la caché de PrestaShop
Desde el back office de tu tienda, ve a Parámetros de la tienda > Rendimiento y limpia la caché. También puedes borrar manualmente el contenido de la carpeta /cache/smarty/ y /cache/cachefs/ (si existe).
2. Usar el Administrador de Archivos de Plesk (Para usuarios sin SSH)
Si no te sientes cómodo con la línea de comandos, Plesk tiene una herramienta gráfica muy útil.
Paso 1: Accede al Administrador de Archivos
Desde el panel de Plesk, selecciona tu dominio y haz clic en "Administrador de Archivos".
Paso 2: Navega hasta la raíz de tu tienda
Busca la carpeta httpdocs (o la que hayas configurado).
Paso 3: Cambia permisos de carpetas y archivos
- Para archivos individuales: Haz clic derecho > "Cambiar permisos". Marca "Lectura y escritura" para el propietario, y solo "Lectura" para grupo y público.
- Para carpetas completas: Selecciona la carpeta (por ejemplo,
cache), haz clic en "Cambiar permisos". Marca "Ejecutar" para todos los niveles (esto equivale al 755 o 777). - Para aplicar a subcarpetas: Marca la opción "Aplicar a subdirectorios" (esto es clave).
[TIP] En Plesk, el propietario suele ser
usuario:psacln. Si ves que no puedes cambiar el propietario desde el Administrador de Archivos, deberás hacerlo por SSH o contactar a tu proveedor de hosting.
3. Solucionar problemas específicos de módulos y temas
A veces, un módulo o tema en particular requiere permisos especiales. Si después de aplicar los pasos anteriores sigues teniendo errores, prueba esto:
- Desactiva el módulo problemático: Ve a Módulos > Administrador de módulos, busca el módulo que da error, desactívalo y vuelve a activarlo.
- Reinstala el módulo: Si no funciona, desinstálalo y vuelve a instalarlo. Asegúrate de que la carpeta del módulo (en
/modules/nombre_del_modulo/) tenga permisos 755 para las carpetas y 644 para los archivos. - Temas: Si el error es visual (CSS/JS no cargan), revisa los permisos de la carpeta
/themes/tu_tema/. Debe ser 755.
Preguntas Frecuentes (FAQ) sobre permisos en PrestaShop con Plesk
Aquí respondo las dudas más comunes que me encuentro en el soporte técnico.
¿Qué permisos debe tener la carpeta "cache"?
La carpeta cache y todas sus subcarpetas deben tener permisos 777 (rwxrwxrwx). Esto permite que PrestaShop genere y almacene archivos temporales, como la caché de Smarty y las hojas de estilo.
¿Por qué después de cambiar permisos sigo viendo el error?
Puede ser por:
- Caché del navegador: Limpia la caché de tu navegador o usa el modo incógnito.
- Caché de PrestaShop: Borra manualmente los archivos de
/cache/smarty/. - Propietario incorrecto: Asegúrate de que el propietario de los archivos sea el usuario de Plesk (no root). Usa
chownpor SSH si es necesario. - El módulo de seguridad de Plesk: Algunos módulos de seguridad (como ModSecurity) pueden bloquear ciertas operaciones. Revisa los logs de errores de Plesk.
¿Es seguro usar permisos 777 en PrestaShop?
No es lo más seguro, pero es necesario para que ciertas funciones (como la subida de imágenes o la generación de caché) funcionen. Para mitigar riesgos, asegúrate de:
- Mantener PrestaShop y todos los módulos actualizados.
- Usar contraseñas seguras.
- Tener un firewall de aplicaciones web (WAF) activo.
- Considerar usar un hosting que gestione los permisos de forma más granular (como algunos planes con Syspanel, que es el panel de control que usamos en algunos servidores, accesible por el puerto 2106).
¿Qué hago si no tengo acceso SSH?
Puedes usar el Administrador de Archivos de Plesk (como expliqué arriba) o contactar a tu proveedor de hosting. Muchos ofrecen soporte para ajustar permisos de forma remota.
¿Los errores de permisos afectan al SEO de mi tienda?
Indirectamente, sí. Si tu tienda está en blanco o muestra errores 500, los motores de búsqueda no podrán rastrearla correctamente, lo que puede perjudicar tu posicionamiento. Además, si las imágenes no se cargan, la experiencia de usuario es mala y Google lo penaliza. Por eso, solucionar estos errores es crucial para tu SEO.
Conclusión y recomendaciones finales
Los permisos PrestaShop Plesk pueden parecer un dolor de cabeza, pero con un poco de método se solucionan rápido. Recuerda la regla de oro: los directorios deben ser 755 (o 777 los críticos) y los archivos 644. Siempre verifica el propietario (usuario:psacln) y no olvides limpiar la caché después de hacer cambios.
Si después de todo sigues teniendo problemas, no dudes en contactar a tu soporte técnico. A veces, la configuración del servidor (como PHP-FPM corriendo con un usuario diferente) puede complicar las cosas. En esos casos, un técnico experimentado puede ajustar el archivo de configuración de Apache o Nginx para que los permisos se hereden correctamente.
Espero que esta guía te haya sido de ayuda. ¡Ahora ve y dale a tu tienda esos permisos que necesita para brillar!
[INFO] Si tu servidor usa Syspanel (el panel que reemplaza a HestiaCP), recuerda que el acceso se realiza por el puerto 2106. La gestión de permisos es muy similar a la de Plesk, pero siempre es bueno consultar la documentación específica de tu proveedor.
