Overview
Deploying GB App to production requires careful attention to security, performance, and reliability. This guide covers essential production configuration and best practices.Pre-Deployment Checklist
Environment Configuration
- Set
APP_ENV=production - Set
APP_DEBUG=false - Generate unique
APP_KEY - Configure production database credentials
- Set up production mail server
- Configure Power BI API credentials
- Set up LDAP connection (if using)
- Configure proper
APP_URL
Security Hardening
- Use HTTPS (SSL/TLS certificate)
- Strong database passwords
- Secure .env file permissions (chmod 600)
- Disable directory listing
- Configure firewall rules
- Set up fail2ban or similar
- Enable CSRF protection
- Configure secure session cookies
Performance Optimization
- Enable OPcache
- Configure Redis for cache/sessions
- Set up queue workers
- Optimize Composer autoloader
- Cache configuration and routes
- Minimize and version assets
- Configure CDN (if applicable)
Backup Strategy
- Set up automated database backups
- Configure file storage backups
- Test backup restoration
- Document backup procedures
Environment Configuration
Production .env Settings
.env
Security Hardening
SSL/TLS Configuration
Always use HTTPS in production.Nginx SSL Configuration
nginx/default.conf
File Permissions
Database Security
Firewall Configuration
Performance Optimization
PHP OPcache Configuration
Add to php.ini:Laravel Optimization
Redis Configuration
Update.env for Redis caching:
Queue Workers
Set up queue workers for background jobs:Database Optimization
Monitoring and Logging
Application Logging
Configure daily log rotation:.env
Error Tracking
Integrate error tracking services:Sentry Integration
.env
Server Monitoring
Install monitoring tools:Uptime Monitoring
Set up external uptime monitoring:- UptimeRobot
- Pingdom
- StatusCake
- New Relic
Backup Strategy
Database Backups
File Backups
Backup storage directory:Backup to S3
Deployment Process
Zero-Downtime Deployment
Health Check Endpoint
Create a health check endpoint:routes/web.php
Scaling Considerations
Horizontal Scaling
For multiple application servers:- Shared Storage: Use NFS or S3 for
storage/app - Centralized Cache: Use Redis cluster
- Session Storage: Use Redis or database
- Load Balancer: Nginx, HAProxy, or cloud load balancer
Database Scaling
- Read Replicas: Configure read replicas for reports
- Connection Pooling: Use ProxySQL or PgBouncer
- Query Optimization: Add indexes, optimize slow queries