Déploiement Production
Prérequis serveur
Section intitulée « Prérequis serveur »- PHP 8.4+ avec extensions :
pdo_pgsql,mbstring,xml,curl,zip - Composer 2.x
- PostgreSQL 18
- Redis (recommandé pour cache/queues)
- Nginx ou Apache
Frontend
Section intitulée « Frontend »- Node.js 20+ (pour le build)
- Serveur web statique (Nginx, Vercel, Netlify…)
Déploiement Backend
Section intitulée « Déploiement Backend »-
Cloner et installer
Terminal window git clone https://github.com/xetaio/XetaSuite-core.gitcd XetaSuite-corecomposer install --no-dev --optimize-autoloader -
Configurer l’environnement
Terminal window cp .env.example .envphp artisan key:generateÉditez
.env:Terminal window APP_ENV=productionAPP_DEBUG=falseAPP_URL=https://api.xetasuite.comDB_CONNECTION=pgsqlDB_HOST=your-db-hostDB_DATABASE=xetasuiteDB_USERNAME=your-userDB_PASSWORD=your-passwordSANCTUM_STATEFUL_DOMAINS=xetasuite.comSESSION_DOMAIN=.xetasuite.comSPA_URL=https://xetasuite.comQUEUE_CONNECTION=redisCACHE_DRIVER=redisSESSION_DRIVER=database -
Optimiser pour la production
Terminal window php artisan config:cachephp artisan route:cachephp artisan view:cachephp artisan event:cache -
Exécuter les migrations
Terminal window php artisan migrate --force -
Configurer le storage
Terminal window php artisan storage:link
Configuration Nginx (Backend)
Section intitulée « Configuration Nginx (Backend) »server { listen 443 ssl http2; server_name api.xetasuite.com;
root /var/www/xetasuite-core/public; index index.php;
ssl_certificate /path/to/certificate.crt; ssl_certificate_key /path/to/private.key;
add_header X-Frame-Options "SAMEORIGIN"; add_header X-Content-Type-Options "nosniff";
location / { try_files $uri $uri/ /index.php?$query_string; }
location ~ \.php$ { fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; }
location ~ /\.(?!well-known).* { deny all; }}Déploiement Frontend
Section intitulée « Déploiement Frontend »-
Build de production
Terminal window cd XetaSuite-Reactnpm cinpm run build -
Configurer l’environnement
Créez
.env:Terminal window VITE_API_URL=https://api.xetasuite.com -
Déployer les fichiers statiques
Uploadez le contenu du dossier
dist/sur votre serveur web ou CDN.
Configuration Nginx (Frontend)
Section intitulée « Configuration Nginx (Frontend) »server { listen 443 ssl http2; server_name app.xetasuite.com;
root /var/www/xetasuite-react/dist; index index.html;
ssl_certificate /path/to/certificate.crt; ssl_certificate_key /path/to/private.key;
location / { try_files $uri $uri/ /index.html; }
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2)$ { expires 1y; add_header Cache-Control "public, immutable"; }}Queue workers
Section intitulée « Queue workers »Consultez le guide Queue Workers pour configurer Supervisor ou Systemd.
Certificats SSL
Section intitulée « Certificats SSL »sudo apt install certbot python3-certbot-nginxsudo certbot --nginx -d api.xetasuite.com -d app.xetasuite.comForge gère automatiquement les certificats SSL avec Let’s Encrypt.
Checklist post-déploiement
Section intitulée « Checklist post-déploiement »-
APP_DEBUG=false -
APP_ENV=production - Caches générés (
config:cache,route:cache, etc.) - Queue worker en cours d’exécution
- Cron du scheduler configuré
- Certificats SSL installés
- Sauvegardes configurées
- Monitoring en place