@extends('documentation.application.squelette') @section('titre') {{ __("Déploiement") }} @endsection @section('menu') @endsection @section('contenu')

Environnements

Environnement Frontend (PWA) Backend (API) Base de Données
Production o2switch/Ionos Serveur dédié Ionos MySQL sur Ionos
Développement localhost:5173
(Vite PWA) (selon le port ouvert au npm run dev)
localhost:8000
(Laravel API) (selon la configuration locale)
MySQL local

Déploiement Frontend

1. Build de Production


# Installation des dépendances
npm install

# Build de production
npm run build

# Les fichiers de build se trouvent dans le dossier 'dist'
    

2. Vérification de l'environnement

Variables d'environnement


# .env
VITE_API_URL=https://api.votredomaine.com
            

Vérifier que :

  • Le fichier .env existe
  • VITE_API_URL pointe vers la bonne API

4. Checklist de déploiement

Élément À vérifier
Variables d'environnement
  • VITE_API_URL correcte
HTTPS
  • Certificat SSL valide
  • Redirection HTTP → HTTPS
  • Pas de contenu mixte
    • Vérifier que toutes les ressources (images, scripts, styles) sont chargées en HTTPS
    • Utiliser des URL relatives ou des URL commençant par // pour les ressources externes
Cache
  • Assets statiques en cache long
    • Configurer les en-têtes Cache-Control pour les fichiers statiques (JS, CSS, images)
    • Définir une durée de cache appropriée (par exemple, 1 an pour les ressources versionnées)
  • Fichiers PWA sans cache
    • S'assurer que le fichier manifest.json n'est pas mis en cache
    • Configurer le Service Worker pour ne pas mettre en cache les fichiers critiques de la PWA

Configuration

Frontend (Vue 3)


// config/index.ts
const getApiUrl = () => {
    if (import.meta.env.DEV) {
        return import.meta.env.VITE_API_URL;
    }
    
    const hostname = window.location.hostname;
    const domainMappings = {
        'application.demo-elanmaintenance.com': 'https://application-back.demoelan.com/api',
    };
    
    return domainMappings[hostname] || 'https://application-back.demoelan.com/api';
};
                

Backend (Laravel)

Configuration par client

Chaque instance API a sa propre configuration avec :

  • Base de données dédiée
  • Configuration CORS spécifique
  • Variables d'environnement propres

Processus de Mise à Jour

Frontend

  1. git pull origin master
  2. Build de la nouvelle version
  3. npm run build
  4. Notification aux utilisateurs (via PWA update), se fait automatiquement
@endsection