Errores de permisos en PrestaShop con Plesk y cómo arreglarlos
¡Hola! Soy tu técnico de soporte amigable. Hoy vamos a resolver uno de los problemas más comunes (y frustrantes) cuando trabajas con PrestaShop en un servidor que usa Plesk: los errores de permisos. Si ves pantallazos en blanco, mensajes de “no se puede escribir”, o errores al instalar módulos o temas, probablemente tengas un problema de permisos. No te preocupes, aquí te explico paso a paso cómo detectarlos y solucionarlos.
¿Qué son los permisos de archivos y carpetas?
Antes de meternos en faena, es importante entender qué son los permisos. Piensa en tu servidor como una casa con varias habitaciones (carpetas) y objetos dentro (archivos). Los permisos son las reglas que deciden quién puede entrar, quién puede leer, quién puede escribir y quién puede ejecutar (como si fuera un programa). En Linux (el sistema operativo de la mayoría de servidores), estos permisos se representan con tres grupos de números: el propietario, el grupo y otros. Por ejemplo, un permiso típico para una carpeta de PrestaShop es 755 y para un archivo es 644.
Cuando estos permisos no son correctos, PrestaShop no puede guardar configuraciones, subir imágenes, instalar módulos o incluso mostrar la tienda. ¡Y ahí es donde aparecen los errores!
Síntomas comunes de errores de permisos en PrestaShop con Plesk
¿Cómo saber si tienes un problema de permisos? Aquí tienes una lista de señales típicas:
- Pantalla en blanco (White Screen of Death) al acceder al back office o front office.
- Error al subir imágenes de productos o categorías.
- Imposibilidad de instalar o desinstalar módulos.
- Mensajes como “No se puede escribir en la carpeta /cache” o “/config no tiene permisos de escritura”.
- Problemas al generar el archivo .htaccess o al activar la URL amigable.
- El tema no se carga correctamente o aparece sin estilos.
- Errores al hacer una copia de seguridad desde el propio PrestaShop.
Si ves alguno de estos síntomas, sigue leyendo. Lo más probable es que los permisos estén desajustados.
¿Por qué ocurren estos errores en Plesk?
Plesk es un panel de control muy potente, pero a veces la gestión de usuarios y grupos puede ser un poco especial. Los errores de permisos en PrestaShop con Plesk suelen deberse a:
- El usuario del sistema vs. el usuario de Plesk: Cuando instalas PrestaShop, los archivos se crean con un propietario (por ejemplo,
usuario_plesk). Pero cuando Plesk ejecuta tareas (como PHP-FPM o cron jobs), a veces lo hace con otro usuario (por ejemplo,psaclnoapache). Si estos no coinciden, los permisos fallan. - Actualizaciones o migraciones: Al mover la tienda de un servidor a otro, o al actualizar PrestaShop, los permisos pueden resetearse o heredarse incorrectamente.
- Instalación de módulos o temas: Algunos módulos mal codificados pueden cambiar permisos de carpetas clave.
- Configuración de PHP-FPM: Si usas PHP-FPM (recomendado para rendimiento), el usuario que ejecuta PHP puede ser diferente al propietario de los archivos.
Paso a paso: Cómo arreglar los permisos de PrestaShop en Plesk
Vamos a solucionarlo. Te guiaré con pasos muy claros. Necesitarás acceder al panel de Plesk y, en algunos casos, a la terminal (SSH) de tu servidor.
1. Identifica el usuario correcto de tu dominio
Lo primero es saber qué usuario es el propietario de los archivos de tu PrestaShop. En Plesk, cada dominio tiene un usuario del sistema.
- Inicia sesión en tu panel de Plesk.
- Ve a Sitios web y dominios.
- Busca tu dominio de PrestaShop y haz clic en Mostrar más (o el icono de engranaje).
- Busca la sección Acceso FTP o Cuentas de usuario. Verás un nombre de usuario (algo como
dominio_ftpousuario123). Ese es el propietario del dominio.
También puedes verlo en Herramientas y configuraciones > Usuarios del sistema. Anota ese nombre de usuario.
2. Accede al administrador de archivos de Plesk
Plesk tiene un administrador de archivos muy útil para cambiar permisos sin usar SSH.
- En Sitios web y dominios, haz clic en Administrador de archivos.
- Navega hasta la carpeta raíz de tu PrestaShop (normalmente
httpdocsopublic_html).
3. Cambia los permisos de las carpetas y archivos clave
PrestaShop necesita permisos específicos para funcionar correctamente. Aquí te doy la configuración ideal:
- Carpetas: Permiso 755 (rwxr-xr-x). Esto permite al propietario leer, escribir y ejecutar; al grupo y otros solo leer y ejecutar.
- Archivos: Permiso 644 (rw-r--r--). El propietario puede leer y escribir; grupo y otros solo leer.
- Archivos especiales (como
config/settings.inc.php): Permiso 644 o incluso 444 (solo lectura) una vez instalado, por seguridad.
Para cambiarlos desde el Administrador de archivos:
- Selecciona la carpeta o archivo.
- Haz clic en Permisos (o Cambiar permisos).
- Marca las casillas adecuadas (Lectura, Escritura, Ejecución) para Propietario, Grupo y Otros.
- Haz clic en Aceptar.
[TIP] Para cambiar permisos de todas las subcarpetas a la vez, es mejor usar SSH con el comando find. Si no tienes SSH, puedes hacerlo desde el Administrador de archivos pero una por una (más tedioso). Te recomiendo el método SSH del paso 5.
4. Ajusta el propietario (chown) de los archivos
A veces los permisos numéricos son correctos, pero el propietario no es el adecuado. PrestaShop necesita que el usuario de Plesk (el que viste en el paso 1) sea el propietario de todos los archivos.
Si tienes acceso SSH, ejecuta este comando (reemplaza usuario_plesk y /ruta/a/prestashop):
chown -R usuario_plesk:psacln /ruta/a/prestashop
Si no tienes SSH, desde Plesk puedes usar la función Reparar permisos (disponible en algunos planes) o cambiar el propietario desde el Administrador de archivos (aunque es más limitado).
[INFO] El grupo psacln es el grupo de Plesk. Si tu servidor usa otro grupo (como www-data o apache), ajústalo. Pregunta a tu hosting si no estás seguro.
5. Usa el comando mágico para arreglar permisos (SSH)
Si te sientes cómodo con SSH, este es el método más rápido y completo. Conéctate a tu servidor y navega hasta la raíz de tu PrestaShop. Luego ejecuta:
# Cambiar propietario (ajusta usuario y grupo)
chown -R usuario_plesk:psacln .
# Permisos para carpetas (755)
find . -type d -exec chmod 755 {} \;
# Permisos para archivos (644)
find . -type f -exec chmod 644 {} \;
# Archivos especiales que necesitan escritura (como cache y log)
chmod -R 777 var/cache var/log
chmod -R 777 img
chmod -R 777 upload
chmod -R 777 download
chmod -R 777 modules
chmod -R 777 themes
chmod -R 777 override
chmod -R 777 config
[WARNING] El permiso 777 es muy permisivo. Solo úsalo temporalmente en las carpetas que menciono (cache, img, upload, etc.) y para solucionar el error. Una vez que todo funcione, considera cambiarlos a 755 para mayor seguridad.
6. Configura correctamente PHP-FPM en Plesk
Este es un punto clave. Plesk permite elegir cómo se ejecuta PHP. Para PrestaShop, lo mejor es usar PHP-FPM ejecutado por el usuario del dominio (no por el usuario “apache” o “nobody”).
- En Sitios web y dominios, haz clic en Configuración de PHP.
- Busca la opción PHP-FPM y selecciona Ejecutar como: Usuario del sistema (o “usuario del sitio web”).
- Guarda los cambios.
Esto hará que PHP se ejecute con el mismo usuario que el propietario de los archivos, eliminando muchos problemas de permisos.
7. Verifica los permisos de la base de datos (menos común)
A veces el error no es de archivos, sino de la base de datos. Asegúrate de que el usuario de la base de datos tenga todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.) sobre la base de datos de PrestaShop. Esto se configura en Bases de datos > phpMyAdmin o en la sección de usuarios de Plesk.
8. Limpia la caché de PrestaShop
Después de arreglar los permisos, limpia la caché de PrestaShop para asegurarte de que los cambios se apliquen.
- Desde el back office: Parámetros avanzados > Rendimiento > Limpiar caché.
- O manualmente: elimina el contenido de la carpeta
/var/cache(excepto el archivo.htaccesssi existe).
Preguntas frecuentes (FAQ)
¿Por qué sigo viendo errores después de cambiar permisos?
Puede que el propietario no sea el correcto. Revisa el paso 4 y asegúrate de que el usuario de Plesk sea el propietario. También verifica que PHP-FPM esté configurado para ejecutarse como ese usuario.
¿Es seguro usar permisos 777?
No, no es seguro a largo plazo. Úsalo solo temporalmente para solucionar el error. Después, cambia a 755 las carpetas y 644 los archivos. Las carpetas cache, img, upload pueden necesitar 755 o 777 según tu configuración, pero intenta no dejarlas en 777 permanentemente.
¿Qué hago si no tengo acceso SSH?
Usa el Administrador de archivos de Plesk para cambiar permisos manualmente. También puedes pedir a tu proveedor de hosting que ejecute los comandos por ti. Muchos hosts ofrecen soporte para esto.
¿Los errores de permisos afectan al SEO?
Indirectamente, sí. Si tu tienda no carga bien (pantalla en blanco, imágenes rotas), los motores de búsqueda pueden penalizarte y los usuarios se irán. Además, si no puedes generar el archivo .htaccess, las URL amigables no funcionarán, lo que perjudica el SEO. Por eso es vital solucionarlo rápido.
¿Debo preocuparme por los permisos al migrar mi tienda?
Sí, es una de las causas más comunes. Al migrar, asegúrate de que los permisos y propietarios se mantengan. Usa herramientas como rsync con la opción -p para preservar permisos, o pide a tu nuevo hosting que los ajuste después de la migración.
Conclusión
Los errores de permisos en PrestaShop con Plesk pueden parecer un dolor de cabeza, pero con estos pasos podrás resolverlos tú mismo. Recuerda: la clave está en que el usuario de Plesk sea el propietario, que PHP-FPM se ejecute como ese usuario, y que los permisos numéricos sean los correctos (755 para carpetas, 644 para archivos). Si sigues esta guía, tu tienda volverá a funcionar sin problemas.
[TIP] Para evitar futuros problemas, programa una tarea de mantenimiento (cron) que revise y corrija permisos periódicamente. En Plesk puedes hacerlo desde Herramientas y configuraciones > Programador de tareas.
Espero que este artículo te haya sido de gran ayuda. Si tienes más dudas, recuerda que siempre puedes contactar con el soporte de tu hosting. ¡Buena suerte con tu tienda!
