Overview
Health Manager uses environment variables stored in the.env file for configuration. This guide covers all available configuration options organized by category.
Application Settings
Configure basic application settings:Application Name
- Email notifications
- Browser page titles
- Application header
Environment Mode
Application Key
The application key is automatically generated when you run
php artisan key:generate. This key is used for encrypting sessions and other sensitive data.Application URL
- Generating links in emails
- Asset URL generation
- CSRF token validation
Localization
en- Englishes- Spanish (default in source)- Other locales can be added via Laravel’s localization system
Security
- 10: Fast, minimum recommended
- 12: Balanced (default)
- 14+: More secure, slower performance
Database Configuration
Health Manager supports multiple database systems.SQLite (Default)
SQLite is ideal for small deployments and doesn’t require a separate database server.
database/database.sqlite file exists:
MySQL / MariaDB
PostgreSQL
The database must already exist. Health Manager will create the tables automatically on first access.
Mail Configuration
Mail configuration is required for:- Password reset emails
- Notification emails
- User invitation emails
SMTP Configuration
Mail Encryption Options
- TLS (Port 587): Recommended for most providers
- SSL (Port 465): Alternative for some providers
- None (Port 25): Not recommended, unencrypted
Development Mail Settings
For local development, you can use
log to write emails to the log file instead of sending them:Session Configuration
Session Driver Options
- database: Store sessions in database (recommended for production)
- file: Store sessions in files
- cookie: Store sessions in encrypted cookies
- redis: Store sessions in Redis (requires Redis configuration)
Session Lifetime
- 120: 2 hours (default)
- 1440: 24 hours
- 10080: 1 week
Cache Configuration
- database: Store cache in database
- file: Store cache in files
- redis: Use Redis (requires Redis setup)
- memcached: Use Memcached (requires Memcached setup)
Queue Configuration
Queues handle background jobs like sending emails. The
database driver stores jobs in the database.[supervisor]
Storage Configuration
- local: Store files in
storage/appdirectory - public: Store files in
storage/app/publicwith public access - s3: Use Amazon S3 (requires AWS configuration)
AWS S3 Configuration (Optional)
If you want to store medical documents in S3:Logging Configuration
Log Levels
emergencyalertcriticalerrorwarningnoticeinfodebug
Maintenance Mode
Redis Configuration (Optional)
If using Redis for caching or queues:Complete Example Configuration
View Complete Production .env Example
View Complete Production .env Example
Environment-Specific Configurations
- Production
- Staging
- Development
Applying Configuration Changes
After modifying the.env file:
Security Best Practices
- Never commit
.envto version control - Add it to.gitignore - Use strong passwords - For database and mail credentials
- Enable HTTPS - Set
APP_URLto usehttps:// - Disable debug mode - Set
APP_DEBUG=false - Restrict file permissions - Ensure
.envis not publicly readable: - Use environment-specific keys - Generate new
APP_KEYfor each environment - Rotate credentials regularly - Update passwords periodically
- Use app-specific passwords - For email services like Gmail
Troubleshooting
Configuration Not Taking Effect
Configuration Not Taking Effect
Clear the configuration cache:
Mail Not Sending
Mail Not Sending
- Verify SMTP credentials are correct
- Check firewall allows outbound connections on mail port
- Test with a simpler configuration first
- Check logs in
storage/logs/laravel.log - Try using
MAIL_MAILER=logto verify email generation works
Database Connection Failed
Database Connection Failed
- Verify database credentials
- Ensure database exists
- Check database user has proper permissions
- Verify database server is running and accessible
- Test connection using database client
APP_KEY Error
APP_KEY Error
Generate a new application key:
Next Steps
User Management
Learn how to manage users and roles
Features Guide
Explore Health Manager’s features
