Solucionar problemas de permisos en archivos de WordPress (Plesk)
¡Hola! Soy tu técnico de soporte amigable. Si estás aquí, es porque tu sitio WordPress en Plesk te está dando problemas de permisos: no puedes subir imágenes, falla la instalación de plugins o temas, o ves el temido mensaje "Error de conexión a la base de datos" o "No se puede crear el directorio wp-content/uploads/…". No te preocupes, es uno de los problemas más comunes y tiene solución. Vamos a arreglarlo paso a paso.
Los problemas de permisos en archivos de WordPress son como tener una puerta cerrada con llave en la habitación equivocada. El servidor (a través del usuario del sistema) necesita poder leer, escribir y ejecutar ciertos archivos y carpetas. En Plesk, la gestión de permisos se hace de forma un poco distinta a otros paneles, pero es muy sencilla una vez que la entiendes.
¿Por qué ocurren estos errores?
WordPress necesita permisos específicos en sus archivos y carpetas para funcionar correctamente. Cuando estos permisos son incorrectos, pueden aparecer estos problemas:
- Errores de escritura: Al intentar subir una imagen, un plugin o un tema.
- No se puede crear el archivo .htaccess: Necesario para los enlaces permanentes y la seguridad.
- Fallo en la actualización automática de WordPress, plugins o temas.
- Página en blanco o errores 500 internos del servidor.
- No se puede conectar a la base de datos (aunque esto suele ser otro tema, a veces los permisos de la carpeta wp-content afectan).
La causa raíz suele ser que el usuario del sistema (bajo el que corre PHP) no tiene los permisos adecuados sobre las carpetas wp-content, wp-content/uploads, wp-content/plugins o wp-content/themes. En Plesk, el usuario del sitio web suele ser el propio usuario del sistema, y los archivos deben ser propiedad de ese usuario.
Paso a paso: Cómo solucionar los permisos en Plesk
Vamos a usar la herramienta de línea de comandos (SSH) o el Administrador de Archivos de Plesk. Te recomiendo SSH para mayor control, pero te explico ambas.
1. Identifica al usuario del sistema de tu sitio
En Plesk, cada sitio tiene un usuario del sistema asociado. Normalmente es el nombre de usuario de FTP o del plan de hosting.
- Ve a Sitios web y dominios.
- Haz clic en el nombre de tu dominio.
- Busca la sección Acceso FTP. Ahí verás el nombre de usuario (ej:
midominio_user).
Este es el usuario que debe ser propietario de todos los archivos de WordPress.
2. Conéctate por SSH (recomendado) o usa el Administrador de Archivos
Opción A: Usando SSH (más rápido y completo)
-
Conéctate a tu servidor Plesk vía SSH con un usuario con permisos de root o sudo (tu usuario de hosting puede no tener acceso, pide a tu proveedor si no).
-
Navega hasta la raíz de tu sitio. Normalmente está en
/var/www/vhosts/tudominio.com/httpdocs/o similar.cd /var/www/vhosts/tudominio.com/httpdocs/ -
Cambia el propietario de todos los archivos al usuario del sistema de tu sitio (el que viste en el paso 1). Usa
chownde forma recursiva:chown -R midominio_user:midominio_user .(El punto
.significa "todos los archivos y carpetas en el directorio actual".) -
Establece los permisos correctos:
- Carpetas: 755 (rwxr-xr-x)
- Archivos: 644 (rw-r--r--)
Ejecuta estos comandos:
# Para todas las carpetas (directorios) find . -type d -exec chmod 755 {} \; # Para todos los archivos find . -type f -exec chmod 644 {} \; -
Permisos especiales para wp-content (necesario para subir archivos):
# La carpeta uploads y sus subcarpetas deben poder escribirse chmod -R 755 wp-content/uploads # Si tienes problemas, prueba con 775 (más permisivo, pero seguro) chmod -R 775 wp-content/uploads[INFO] Algunos plugins o temas necesitan permisos de escritura en sus propias carpetas. Haz lo mismo para
wp-content/pluginsywp-content/themessi es necesario, pero solo si el plugin/theme lo requiere. Por seguridad, mantenlas en 755 a menos que haya un error. -
Protege archivos sensibles (opcional pero recomendado):
chmod 600 wp-config.php chmod 644 .htaccess
Opción B: Usando el Administrador de Archivos de Plesk
-
Ve a Sitios web y dominios > Administrador de Archivos.
-
Navega hasta la raíz de tu sitio (httpdocs).
-
Cambiar propietario: No siempre se puede desde aquí, pero si tu usuario de Plesk es el propietario, los archivos ya deberían ser suyos. Si ves que el propietario es
rootonobody, tendrás que pedir a tu proveedor que lo cambie. -
Cambiar permisos: Selecciona todos los archivos y carpetas (Ctrl+A).
- Haz clic en Permisos (o Cambiar permisos).
- Marca:
- Propietario: Lectura, Escritura, Ejecución (rwx)
- Grupo: Lectura, Ejecución (r-x)
- Otros: Lectura, Ejecución (r-x)
- Esto asigna 755 a todo.
- Luego, para los archivos individuales (como wp-config.php), selecciona el archivo y cambia a 644 o 600.
[WARNING] El Administrador de Archivos de Plesk a veces no permite cambiar permisos de forma recursiva masiva. Para eso es mejor SSH.
3. Solución específica para el error "No se puede crear el directorio wp-content/uploads"
Este es el error más común. La carpeta uploads no existe o sus permisos son incorrectos.
- Crea la carpeta uploads si no existe:
mkdir wp-content/uploads - Asigna los permisos correctos:
chmod 755 wp-content/uploads # O si el error persiste: chmod 775 wp-content/uploads - Asegúrate de que el propietario es correcto (el usuario del sistema).
4. ¿Y si tengo problemas con los plugins o temas?
A veces un plugin o tema necesita permisos de escritura en su propia carpeta para actualizarse o guardar configuraciones. Si después de los pasos anteriores sigues teniendo errores al instalar o actualizar:
- Ve a la carpeta del plugin/tema problemático:
cd wp-content/plugins/nombre-del-plugin - Dale permisos 755 a la carpeta y 644 a sus archivos:
chmod -R 755 . find . -type f -exec chmod 644 {} \; - Si requiere escritura para archivos de configuración, puedes darle permisos 664 al archivo específico (ej:
config.php).
5. Verifica la configuración de PHP (modo CGI vs FastCGI)
En Plesk, la forma en que PHP se ejecuta afecta los permisos.
- PHP como módulo de Apache (mod_php): PHP se ejecuta como el usuario del sitio web. Esto es ideal porque los permisos son sencillos.
- PHP como CGI/FastCGI: PHP se ejecuta como un usuario separado (a menudo
nobodyo un usuario del sistema). Esto puede causar conflictos.
Para cambiarlo en Plesk:
- Ve a Sitios web y dominios > tu dominio > Configuración de PHP.
- Busca Procesamiento de PHP o Modo de ejecución.
- Selecciona FastCGI o FPM (recomendado) y guarda. Si usas CGI, asegúrate de que el usuario del sitio tenga permisos de ejecución en los archivos PHP (755 en la carpeta y 644 en los archivos).
[TIP] Si usas FPM (PHP-FPM), el usuario de PHP suele ser el mismo que el del sitio, por lo que los permisos se simplifican.
6. Casos especiales: Migraciones o copias de seguridad
Si has restaurado una copia de seguridad o migrado el sitio, los permisos suelen quedar mal. Sigue todos los pasos anteriores desde el principio. Es muy común que el propietario sea root o un usuario incorrecto.
Preguntas frecuentes (FAQ)
¿Qué permisos exactos necesita WordPress?
- Carpetas: 755 (rwxr-xr-x)
- Archivos: 644 (rw-r--r--)
- wp-config.php: 600 o 640 (solo lectura para el propietario)
- .htaccess: 644 o 604
- wp-content/uploads: 755 (o 775 si hay problemas)
¿Por qué no puedo subir imágenes aunque los permisos sean 755?
Puede que el propietario de la carpeta uploads no sea el usuario del sistema. Vuelve a ejecutar el comando chown para asegurarte. También verifica que la carpeta uploads exista (a veces se borra accidentalmente).
¿Es seguro dar permisos 777 a las carpetas?
No, nunca. 777 permite que cualquier usuario del servidor escriba en esas carpetas, lo que es un grave riesgo de seguridad. Si necesitas más permisos, usa 775 (permite escritura al grupo) o 755. Si un plugin te pide 777, búscate una alternativa más segura.
¿Cómo sé si el problema es de permisos o de otra cosa?
Prueba a crear un archivo de prueba desde el Administrador de Archivos de Plesk en la carpeta uploads. Si puedes, el problema no son los permisos. Si no puedes, entonces sí.
¿Puedo automatizar la corrección de permisos?
Sí, puedes crear un script en bash que ejecute los comandos chown y chmod periódicamente mediante un cron job. Pero lo mejor es arreglarlo de raíz.
Conclusión
Los problemas de permisos en WordPress con Plesk se resuelven casi siempre con tres pasos: cambiar el propietario al usuario del sitio, asignar permisos 755 a carpetas y 644 a archivos, y dar permisos especiales a wp-content/uploads. No te asustes, es un proceso mecánico y una vez que lo haces, tu sitio volverá a funcionar.
Si después de todo esto sigues teniendo problemas, revisa la configuración de PHP (modo de ejecución) o contacta a tu proveedor de hosting. Ellos pueden verificar si hay restricciones de seguridad adicionales (como SELinux) que estén bloqueando.
Espero que este artículo te haya sido de ayuda. ¡Ahora ve y arregla esos permisos! Si tienes más dudas, aquí estoy.
