---
title: "Laravel: Error de permisos al intentar borrar el caché"
excerpt: "Al hacer deploys automáticos con Envoy encontré un error, indicaba que no estaba limpiando el cache de la aplicación por problemas de permisos. Aquí te muestro como lo solucioné."
date: "2023-01-08T01:59:17.000Z"
category: "Laravel"
seo_title: "Solucionar error de permisos al borrar caché en Laravel"
seo_description: "Corrige el error de permisos en php artisan cache:clear usando chown y chmod en los directorios storage y bootstrap/cache. Solución probada en deploys con Laravel Envoy."
author:
  name: "angel cruz"
  picture: "https://angelcruzdevcdn.nyc3.cdn.digitaloceanspaces.com/images/me/angel-cruz.png"
ogImage:
  url: "/images/open-graph/laravel-opengraph-image.png"
---

Mi usuario para hacer los deploys se llama bender (si, como Bender de Futurama 🤣) por lo que al usar Envoy ejecutaba este comando: `php artisan cache:clear` . Para solucionar este problema, primero hay que revisar que el usuario bajo el cual se ejecuta PHP  (www-data si usas  Apache / NGINX) tenga permisos de escritura en el directorio de caché de tu aplicación. Y eso se puede hacer simplemente listando el directorio `storage` de la siguiente forma:

```bash
bender@server:~/html/project$ ls -l storage/
total 24
drwxrwxr-x 3 www-data www-data 4096 Jun 12  2022 app
drwxrwxr-x 2 www-data www-data 4096 Aug  6 19: 03 debugbar
drwxrwxr-x 6 www-data www-data 4096 Jan  7 23: 05 framework
drwxrwxr-x 2 www-data www-data 4096 Aug  6 19: 03 image
drwxrwxr-x 2 www-data www-data 4096 Jun 12  2022 logs
drwxrwxr-x 3 www-data www-data 4096 Aug 26 04: 46 media-library
```
En este caso, el usuario no es el mismo por lo que necesitaba cambiar ese comportamiento y para eso necesitaba la ayuda de los comandos `chown` y `chmod`:
```bash
sudo chown -R $USER:www-data storage 
sudo chown -R $USER:www-data bootstrap/cache 
chmod -R 775 storage 
chmod -R 775 bootstrap/cache
```
Luego hay que verificar que el cambio se haya realizado correctamente y para eso usamos el mismo comando `ls -l`:
```bash
bender@server:~/html/project$ ls -l storage/
total 24
drwxrwxr-x 3 bender www-data 4096 Jun 12  2022 app
drwxrwxr-x 2 bender www-data 4096 Aug  6 19: 03 debugbar
drwxrwxr-x 6 bender www-data 4096 Jan  7 23: 05 framework
drwxrwxr-x 2 bender www-data 4096 Aug  6 19: 03 image
drwxrwxr-x 2 bender www-data 4096 Jun 12  2022 logs
drwxrwxr-x 3 bender www-data 4096 Aug 26 04: 46 media-library
```
Y con eso validamos que el cambio se hizo correctamente y ahora no tendremos problemas.
Espero que esto te sirva de ayuda si también tienes algún problema parecido en algún momento.

---

## Sitemap

Índice completo del sitio: [/sitemap.md](https://angelcruz.dev/sitemap.md)

Canónico HTML: [https://angelcruz.dev/post/laravel-error-de-permisos-al-intentar-borrar-el-cache](https://angelcruz.dev/post/laravel-error-de-permisos-al-intentar-borrar-el-cache)
