Saltar al contenido principal

Permisos de Archivos y Almacenamiento

Los permisos de archivos correctos son fundamentales tanto para la seguridad como para el correcto funcionamiento.


Permisos Requeridos

RutaPermisoPropietarioPropósito
Raíz del proyecto (/var/www/feedbackpulse-saas/)755www-dataArchivos de la aplicación
storage/775www-dataRegistros, caché, sesiones, subidas
storage/app/public/775www-dataSubidas públicas (logos, fotos)
storage/framework/cache/775www-dataCaché de la aplicación
storage/framework/sessions/775www-dataSesiones de usuario
storage/framework/views/775www-dataVistas Blade compiladas
storage/logs/775www-dataRegistros de la aplicación
bootstrap/cache/775www-dataCaché de arranque del framework
.env640www-dataConfiguración sensible

Establecer Permisos (Linux)

cd /var/www/feedbackpulse-saas

# Establecer propietario
sudo chown -R www-data:www-data .

# Archivos: 644, Directorios: 755
sudo find . -type f -exec chmod 644 {} \;
sudo find . -type d -exec chmod 755 {} \;

# Directorios con permisos de escritura
sudo chmod -R 775 storage bootstrap/cache

# Proteger el archivo .env
sudo chmod 640 .env

Reemplaza www-data con el usuario de tu servidor web:

  • Apache en Ubuntu: www-data
  • Nginx en Ubuntu: www-data
  • Apache en CentOS: apache
  • Nginx en CentOS: nginx
  • Laragon en Windows: No se necesitan cambios de permisos

El Enlace Simbólico de Almacenamiento

Laravel utiliza un enlace simbólico para que los archivos en storage/app/public/ sean accesibles desde la web:

public/storage -> storage/app/public/

Crearlo

php artisan storage:link

Verificarlo

ls -la public/storage
# Debe mostrar: public/storage -> /var/www/feedbackpulse-saas/storage/app/public

Qué Almacena

DirectorioContenido
storage/app/public/logos/Logotipos de empresas de los inquilinos
storage/app/public/products/Imágenes de productos
storage/app/public/submissions/Fotos subidas desde el feedback
storage/app/public/avatars/Fotos de perfil de los usuarios
storage/app/public/landing/Recursos de la página de inicio

Gestión del Espacio en Disco

Monitorear el Uso del Disco

# Verificar el uso general del disco
df -h

# Verificar el uso del almacenamiento de FeedbackPulse
du -sh storage/app/public/
du -sh storage/logs/
du -sh storage/framework/cache/

Rotación de Registros

Los registros de Laravel pueden crecer mucho. Configura la rotación de registros:

sudo nano /etc/logrotate.d/feedbackpulse
/var/www/feedbackpulse-saas/storage/logs/*.log {
daily
missingok
rotate 14
compress
delaycompress
notifempty
copytruncate
}

Limpiar la Caché

cd /var/www/feedbackpulse-saas

# Limpiar caché de la aplicación
php artisan cache:clear

# Limpiar vistas compiladas
php artisan view:clear

# Limpiar caché de rutas
php artisan route:clear

# Limpiar caché de configuración
php artisan config:clear

# Todo de una vez
php artisan optimize:clear

Próximos Pasos