5.0 KiB
5.0 KiB
🚀 Guida Completa Deploy e Integrazione
📋 CHECKLIST PRE-DEPLOY
1. Verifica File Essenziali
# Controlla che tutti i file siano presenti
ls -la
ls app/Models/
ls app/Http/Controllers/
ls database/migrations/
ls resources/views/
2. Configurazione Environment
# Copia e configura .env
cp .env.example .env
# Genera chiave applicazione
php artisan key:generate
3. Database Setup
# Esegui le migrazioni
php artisan migrate
# Seed dei dati iniziali
php artisan db:seed
# Crea i ruoli e permessi
php artisan permission:create-role super-admin
php artisan permission:create-role admin
php artisan permission:create-role amministratore
php artisan permission:create-role condomino
🔧 INTEGRAZIONE PAGINE ESISTENTI
Opzione 1: Integrazione Manuale
Se hai già delle pagine sviluppate, puoi integrarle così:
- Copia le tue views esistenti in
resources/views/ - Adatta i layout per usare il nostro sistema
- Aggiorna le rotte in
routes/web.php
Opzione 2: Migrazione Automatica
# Script per migrare le tue pagine esistenti
php artisan make:command MigrateExistingPages
🌐 DEPLOY OPZIONI
Opzione A: Deploy Locale (Sviluppo)
# Installa dipendenze
composer install
npm install
# Compila assets
npm run build
# Avvia server locale
php artisan serve
Opzione B: Deploy su Hosting Condiviso
- Upload files via FTP/SFTP
- Configura database nel pannello hosting
- Imposta .env con credenziali hosting
- Esegui migrazioni via SSH o pannello
Opzione C: Deploy su VPS/Cloud
# Clona repository
git clone [tuo-repo]
# Setup ambiente
sudo apt update
sudo apt install php8.2 mysql-server nginx
# Configura Nginx
sudo nano /etc/nginx/sites-available/condominio
Opzione D: Deploy su Netlify (Frontend)
# Build per produzione
npm run build
# Deploy automatico
# Collega repository GitHub a Netlify
📁 STRUTTURA FILE FINALE
condominio-management/
├── app/
│ ├── Http/Controllers/
│ │ ├── Admin/
│ │ ├── SuperAdmin/
│ │ └── Condomino/
│ ├── Models/
│ └── Services/
├── database/
│ ├── migrations/
│ └── seeders/
├── resources/
│ ├── views/
│ │ ├── admin/
│ │ ├── superadmin/
│ │ ├── condomino/
│ │ └── layouts/
│ ├── css/
│ └── js/
├── routes/
├── public/
└── storage/
🔐 CONFIGURAZIONE SICUREZZA
1. Permessi File
# Imposta permessi corretti
chmod -R 755 storage/
chmod -R 755 bootstrap/cache/
chown -R www-data:www-data storage/
2. Configurazione .env Produzione
APP_ENV=production
APP_DEBUG=false
APP_URL=https://tuodominio.com
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=condominio_db
DB_USERNAME=username
DB_PASSWORD=password
MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=tua-email@gmail.com
MAIL_PASSWORD=tua-password
🎯 PRIMO ACCESSO E TEST
1. Crea Super Admin
php artisan tinker
# Nel tinker:
$user = App\Models\User::create([
'name' => 'Super Admin',
'email' => 'admin@tuodominio.com',
'password' => bcrypt('password123'),
'email_verified_at' => now()
]);
$user->assignRole('super-admin');
2. Test Funzionalità
- Login come super-admin
- Crea amministratore dal pannello
- Crea stabile di test
- Aggiungi unità immobiliari
- Crea soggetti/condomini
- Test ticket e documenti
📊 MONITORAGGIO E MANUTENZIONE
1. Log Monitoring
# Monitora log errori
tail -f storage/logs/laravel.log
# Log personalizzati
tail -f storage/logs/assemblee.log
tail -f storage/logs/bilanci.log
2. Backup Automatico
# Script backup database
php artisan backup:run
# Backup files
rsync -av /path/to/project/ /backup/location/
3. Aggiornamenti
# Update dipendenze
composer update
npm update
# Nuove migrazioni
php artisan migrate
# Clear cache
php artisan cache:clear
php artisan config:clear
php artisan view:clear
🚀 LANCIO PRODUZIONE
Checklist Finale
- Database configurato e migrato
- .env produzione configurato
- SSL certificato installato
- Backup automatico attivo
- Monitoring errori attivo
- Email SMTP configurato
- Permessi file corretti
- Cache ottimizzata
- Super admin creato
- Test completo funzionalità
Performance Optimization
# Ottimizza per produzione
php artisan config:cache
php artisan route:cache
php artisan view:cache
composer install --optimize-autoloader --no-dev
📞 SUPPORTO POST-DEPLOY
Problemi Comuni
- Errore 500: Controlla log Laravel
- Database connection: Verifica credenziali .env
- Permessi: Controlla ownership files
- Assets mancanti: Esegui
npm run build
Contatti Supporto
- Email: support@tuodominio.com
- Documentazione: docs.tuodominio.com
- GitHub Issues: github.com/tuo-repo/issues