Checkpoint: Correction du lien QR code pour utiliser l'URL publique
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.
This commit is contained in:
63
scripts/configure-public-url.sh
Executable file
63
scripts/configure-public-url.sh
Executable file
@@ -0,0 +1,63 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script de configuration de l'URL publique pour les QR codes
|
||||
# Usage: ./scripts/configure-public-url.sh
|
||||
|
||||
set -e
|
||||
|
||||
echo "=========================================="
|
||||
echo "Configuration de l'URL publique"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
|
||||
# Chemin du fichier .env
|
||||
ENV_FILE=".env"
|
||||
|
||||
# Vérifier si le fichier .env existe
|
||||
if [ ! -f "$ENV_FILE" ]; then
|
||||
echo "Création du fichier .env..."
|
||||
touch "$ENV_FILE"
|
||||
fi
|
||||
|
||||
# Demander l'URL publique
|
||||
echo "Entrez l'URL publique de votre application (ex: https://formations.itinova.org) :"
|
||||
read PUBLIC_URL
|
||||
|
||||
# Vérifier que l'URL commence par http:// ou https://
|
||||
if [[ ! $PUBLIC_URL =~ ^https?:// ]]; then
|
||||
echo "❌ Erreur : L'URL doit commencer par http:// ou https://"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Vérifier si APP_PUBLIC_URL existe déjà dans le fichier
|
||||
if grep -q "^APP_PUBLIC_URL=" "$ENV_FILE"; then
|
||||
echo "La variable APP_PUBLIC_URL existe déjà dans .env"
|
||||
echo "Voulez-vous la remplacer ? (o/n)"
|
||||
read REPLACE
|
||||
if [ "$REPLACE" = "o" ] || [ "$REPLACE" = "O" ]; then
|
||||
# Remplacer la ligne existante
|
||||
sed -i "s|^APP_PUBLIC_URL=.*|APP_PUBLIC_URL=$PUBLIC_URL|" "$ENV_FILE"
|
||||
echo "✅ Variable APP_PUBLIC_URL mise à jour : $PUBLIC_URL"
|
||||
else
|
||||
echo "❌ Configuration annulée"
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
# Ajouter la variable
|
||||
echo "" >> "$ENV_FILE"
|
||||
echo "# URL publique de l'application (pour les QR codes)" >> "$ENV_FILE"
|
||||
echo "APP_PUBLIC_URL=$PUBLIC_URL" >> "$ENV_FILE"
|
||||
echo "✅ Variable APP_PUBLIC_URL ajoutée : $PUBLIC_URL"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "=========================================="
|
||||
echo "Configuration terminée !"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
echo "⚠️ IMPORTANT : Vous devez redémarrer l'application pour que les changements soient pris en compte."
|
||||
echo ""
|
||||
echo "Commandes de redémarrage :"
|
||||
echo " - Avec PM2 : pm2 restart formation-manager-itinova"
|
||||
echo " - Avec systemd : sudo systemctl restart formation-manager-itinova"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user