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

Cómo solucionar el error 'No se puede escribir en el archivo' en PrestaShop

Actualizado el 14 de diciembre de 2025

¿Por qué aparece el error "No se puede escribir en el archivo" en PrestaShop?

Este es uno de los errores más comunes que vemos en nuestro soporte técnico. Cuando PrestaShop te muestra el mensaje "No se puede escribir en el archivo" (o su versión en inglés "Cannot write to file"), normalmente significa que tu tienda online no tiene los permisos necesarios para modificar archivos o carpetas en tu servidor.

Piensa en los permisos como en una puerta con llave: si no tienes la llave correcta, no puedes entrar. Lo mismo ocurre con PrestaShop: si los archivos no tienen los permisos adecuados, la plataforma no puede escribir información nueva, como caché, archivos de configuración o logs.

Este problema puede aparecer al instalar un módulo, al actualizar la tienda, al cambiar el tema o incluso al intentar guardar un producto. La buena noticia es que tiene solución, y en este artículo te voy a explicar paso a paso cómo arreglarlo, incluso si no eres una persona técnica.

¿Qué causa el error de permisos en PrestaShop?

Antes de lanzarnos a solucionar el problema, es importante entender qué lo provoca. Las causas más frecuentes son:

  • Permisos incorrectos (CHMOD): Los archivos o carpetas tienen permisos demasiado restrictivos (por ejemplo, 644 cuando deberían ser 755, o 755 cuando necesitan 775).
  • Propietario incorrecto: El usuario del servidor que ejecuta PHP no es el mismo que el propietario de los archivos.
  • Sistema de archivos montado en solo lectura: A veces el hosting monta ciertas carpetas como solo lectura.
  • Espacio en disco agotado: Si no hay espacio, el servidor no puede escribir nada.
  • Configuración de PHP restrictiva: Algunas funciones de escritura están deshabilitadas.

Ahora sí, vamos a lo importante: cómo solucionarlo.

Solución paso a paso para el error "No se puede escribir en el archivo"

Paso 1: Identifica qué archivo o carpeta está causando el problema

El mensaje de error suele indicar la ruta exacta del archivo problemático. Por ejemplo, algo como:

"No se puede escribir en el archivo /home/usuario/public_html/var/cache/prod/... "

Anota esa ruta, porque la necesitarás para los siguientes pasos. Si el error no te da una ruta específica, revisa los logs de errores de PrestaShop:

  1. Ve a tu panel de administración de PrestaShop.
  2. Navega a Parámetros avanzados > Registros (Logs).
  3. Busca entradas recientes con el error de permisos.

Paso 2: Verifica los permisos actuales de los archivos

Para comprobar los permisos, necesitas acceder a tu servidor. Puedes hacerlo mediante:

  • El administrador de archivos de tu hosting (cPanel, Syspanel, Plesk, etc.).
  • Un cliente FTP como FileZilla.
  • La terminal SSH si tienes acceso.

Una vez dentro, localiza la carpeta raíz de tu PrestaShop (normalmente public_html, www o htdocs). Haz clic derecho sobre la carpeta o archivo problemático y selecciona "Permisos" o "File permissions".

Los permisos se representan con números (644, 755, 775, etc.). Aquí tienes una guía rápida:

  • 644: El propietario puede leer y escribir, el resto solo leer. (Correcto para archivos estáticos).
  • 755: El propietario puede leer, escribir y ejecutar; el resto solo leer y ejecutar. (Correcto para carpetas).
  • 775: Similar a 755, pero permite al grupo escribir. (Recomendado para carpetas en muchos hostings).
  • 777: Todos pueden leer, escribir y ejecutar. (Temporal, solo para pruebas).

Paso 3: Corrige los permisos (CHMOD) de archivos y carpetas

Este es el corazón de la solución. Para el error permisos PrestaShop, te recomiendo estos valores:

  • Carpetas (directorios): 755 o 775.
  • Archivos (PHP, JS, CSS, imágenes): 644 o 664.

⚠️ [WARNING] Nunca uses 777 de forma permanente en producción. Es un riesgo de seguridad grave, ya que cualquiera podría modificar tus archivos. Úsalo solo como prueba temporal y vuelve a cambiarlo después.

Cómo cambiar los permisos con FileZilla (el método más fácil)

  1. Abre FileZilla y conéctate a tu servidor.
  2. Navega hasta la carpeta raíz de PrestaShop.
  3. Selecciona todos los archivos y carpetas (Ctrl+A).
  4. Haz clic derecho y elige "Permisos de archivos...".
  5. En la ventana emergente, marca la opción "Aplicar a todos los archivos y directorios".
  6. Introduce el valor 755 para directorios y 644 para archivos.
  7. Haz clic en Aceptar y espera a que termine el proceso.

Este método funciona en la mayoría de los casos. Si tu hosting usa Syspanel (recuerda que el puerto de acceso es el 2106), el proceso es similar usando su administrador de archivos web.

Cómo cambiar los permisos con comandos SSH

Si tienes acceso SSH, puedes usar estos comandos desde la raíz de tu tienda:

find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;

Esto cambiará todas las carpetas a 755 y todos los archivos a 644.

Paso 4: Corrige el propietario de los archivos

A veces los permisos están bien, pero el propietario de los archivos es incorrecto. Esto pasa mucho cuando mueves la tienda de un servidor a otro o cuando restauras una copia de seguridad.

En la mayoría de los hostings compartidos, el usuario de FTP y el usuario de PHP son el mismo, así que no hay problema. Pero en servidores VPS o dedicados, puede haber diferencias.

Para verificar el propietario:

  1. Conéctate por SSH.
  2. Ejecuta: ls -la en la carpeta raíz.
  3. Verás algo como usuario:grupo. El propietario debe coincidir con el usuario que ejecuta PHP.

Si no coincide, puedes cambiarlo con:

chown -R usuario:grupo /ruta/a/prestashop

💡 [TIP] En la mayoría de los casos, el propietario debe ser www-data o nobody si usas Apache/Nginx, o tu usuario de cPanel/Syspanel si es un hosting compartido.

Paso 5: Revisa el espacio en disco

Un disco lleno también puede causar el error no se puede escribir prestashop. Para comprobarlo:

  • En cPanel: busca la sección "Uso de disco".
  • En Syspanel (puerto 2106): ve a la sección de estadísticas o uso de almacenamiento.
  • Por SSH: ejecuta df -h.

Si el disco está al 100%, deberás liberar espacio eliminando copias de seguridad antiguas, logs o caché.

Paso 6: Limpia la caché de PrestaShop

A veces el error persiste incluso con permisos correctos porque la caché está corrupta. Para limpiarla:

  1. Ve a tu panel de administración de PrestaShop.
  2. Navega a Parámetros avanzados > Rendimiento.
  3. Haz clic en "Vaciar la caché" (puede aparecer como "Limpiar la caché" o "Borrar caché").

Si no puedes acceder al panel, elimina manualmente el contenido de la carpeta var/cache (o cache en versiones antiguas) mediante FTP o el administrador de archivos.

Paso 7: Verifica los archivos de configuración

Los archivos config/settings.inc.php (en PrestaShop 1.6) o app/config/parameters.php (en PrestaShop 1.7 y 1.8) deben ser escribibles durante la instalación o actualización. Después, pueden volver a ser de solo lectura.

Si el error menciona estos archivos, dales permisos 644 y asegúrate de que el propietario sea correcto.

¿Qué hacer si el error persiste?

Si has seguido todos los pasos y todavía ves el mensaje, prueba esto:

  1. Desactiva el modo de mantenimiento temporalmente y vuelve a activarlo. A veces fuerza la regeneración de archivos.
  2. Reinstala el módulo o tema problemático desde el marketplace de PrestaShop.
  3. Contacta con tu proveedor de hosting. Puede que tengan una política de seguridad que bloquee la escritura en ciertas carpetas.

📘 [INFO] En Syspanel, el panel de control de tu hosting (accesible por el puerto 2106), puedes encontrar herramientas de diagnóstico de permisos en la sección de "Archivos" o "Sistema". Úsalas para verificar el estado de tus carpetas.

Preguntas frecuentes sobre el error de permisos en PrestaShop

¿Puedo usar 777 para todos mis archivos?

No, esto es muy peligroso. Cualquier visitante podría subir o modificar archivos en tu servidor, comprometiendo la seguridad de tu tienda y de tus clientes. Úsalo solo temporalmente y cámbialo de inmediato.

¿Cada cuánto debo revisar los permisos de mis archivos?

No es necesario revisarlos constantemente, pero después de cada actualización de PrestaShop, instalación de módulos o cambios de servidor, es buena práctica verificarlos.

¿El error puede afectar a mis clientes?

Sí, indirectamente. Si PrestaShop no puede escribir la caché, la tienda se vuelve más lenta. En casos extremos, puede mostrar errores 500 o impedir que los pedidos se procesen correctamente.

¿Qué diferencia hay entre chmod 755 y chmod 775?

La diferencia está en el grupo. Con 755, el grupo solo puede leer y ejecutar. Con 775, el grupo también puede escribir. En algunos hostings, el grupo necesita escribir para que ciertas funciones funcionen.

Consejos finales para evitar futuros errores de permisos

  • Realiza copias de seguridad periódicas de tus archivos y base de datos.
  • Mantén PrestaShop actualizado a la última versión estable.
  • Usa módulos y temas de fuentes confiables para evitar conflictos.
  • Configura correctamente el propietario de los archivos al migrar de servidor.
  • Si usas Syspanel, recuerda que el acceso es por el puerto 2106 y que su administrador de archivos te permite cambiar permisos fácilmente sin necesidad de FTP.

Conclusión

El error "No se puede escribir en el archivo" en PrestaShop puede parecer aterrador, pero en la mayoría de los casos se resuelve con una simple corrección de permisos archivos prestashop. Con esta guía, ya sabes cómo diagnosticar el problema, cambiar los chmod prestashop y verificar que todo esté en orden.

Recuerda siempre trabajar con calma, hacer una copia de seguridad antes de realizar cambios drásticos y, si te sientes abrumado, no dudes en pedir ayuda a tu proveedor de hosting o a un profesional. Tu tienda online estará funcionando en poco tiempo.

Si este artículo te ha sido útil, compártelo con otros comerciantes que puedan estar pasando por el mismo problema. ¡Buena suerte 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