Modifications apportées : - Création de server/_core/appUrl.ts : fonction getAppBaseUrl() pour gérer l'URL de base - Modification de server/qrCodeGenerator.ts : utilise getAppBaseUrl() au lieu de localhost - Support de plusieurs variables d'environnement (APP_PUBLIC_URL, DOMAIN_NAME, SERVER_URL) - Création du guide CONFIGURATION_URL_PUBLIQUE.md avec instructions détaillées - Création du script configure-public-url.sh pour faciliter la configuration Configuration requise sur le serveur VPS : Ajouter dans le fichier .env : APP_PUBLIC_URL=https://formations.itinova.org Puis redémarrer l'application avec PM2 ou systemd. Les QR codes générés utiliseront maintenant l'URL publique configurée au lieu de localhost.
67 lines
1.9 KiB
Markdown
67 lines
1.9 KiB
Markdown
# Configuration de l'URL publique pour les QR codes
|
|
|
|
## Problème
|
|
Les QR codes générés pointent vers `http://localhost:3000` au lieu de l'URL publique de l'application.
|
|
|
|
## Solution
|
|
Configurer la variable d'environnement `APP_PUBLIC_URL` sur le serveur VPS.
|
|
|
|
## Étapes de configuration sur le serveur VPS
|
|
|
|
### 1. Se connecter au serveur
|
|
```bash
|
|
ssh votre-utilisateur@votre-serveur
|
|
```
|
|
|
|
### 2. Éditer le fichier .env
|
|
```bash
|
|
cd /chemin/vers/formation-manager-itinova
|
|
nano .env
|
|
```
|
|
|
|
### 3. Ajouter la variable APP_PUBLIC_URL
|
|
Ajoutez cette ligne dans le fichier `.env` :
|
|
```
|
|
APP_PUBLIC_URL=https://formations.itinova.org
|
|
```
|
|
|
|
### 4. Redémarrer l'application
|
|
```bash
|
|
# Si vous utilisez PM2
|
|
pm2 restart formation-manager-itinova
|
|
|
|
# Ou si vous utilisez systemd
|
|
sudo systemctl restart formation-manager-itinova
|
|
```
|
|
|
|
### 5. Vérifier que ça fonctionne
|
|
1. Connectez-vous à l'interface formateur
|
|
2. Générez un nouveau QR code pour une séquence
|
|
3. Scannez le QR code avec votre téléphone
|
|
4. Vérifiez que l'URL commence par `https://formations.itinova.org/emargement/...`
|
|
|
|
## Alternative : Utiliser DOMAIN_NAME
|
|
Si vous préférez, vous pouvez aussi utiliser :
|
|
```
|
|
DOMAIN_NAME=formations.itinova.org
|
|
```
|
|
Le système ajoutera automatiquement le `https://` devant.
|
|
|
|
## Vérification rapide
|
|
Pour vérifier que la variable est bien prise en compte, vous pouvez :
|
|
```bash
|
|
# Afficher les variables d'environnement de l'application
|
|
pm2 env 0 # ou le numéro de votre processus
|
|
|
|
# Ou redémarrer et vérifier les logs
|
|
pm2 restart formation-manager-itinova
|
|
pm2 logs formation-manager-itinova
|
|
```
|
|
|
|
## Note importante
|
|
⚠️ **Après avoir ajouté la variable d'environnement, vous DEVEZ redémarrer l'application** pour que les changements soient pris en compte.
|
|
|
|
## Fichiers modifiés
|
|
- `server/_core/appUrl.ts` : Nouvelle fonction pour gérer l'URL de base
|
|
- `server/qrCodeGenerator.ts` : Utilise maintenant `getAppBaseUrl()` au lieu de `localhost`
|