Skip to content

fix(client): eviter erreur mixed content sur la vm avec wss

BADSI MASSI requested to merge fix-VM into develop

Description

Correction de l'erreur de sécurité "Mixed Content" qui bloquait les connexions WebSockets lors du déploiement sur la machine virtuelle de l'Université. Le client Socket.IO essayait de se connecter de façon non sécurisée (ws:// sur le port 3000) alors que l'application était servie en https://. Le code intercepte désormais le chargement en HTTPS et force l'utilisation de l'origine sécurisée (ce qui déclenche automatiquement une connexion en wss:// relayée par Nginx).

Lien vers la tâche

Type de changement

  • Feature — nouvelle fonctionnalité
  • Fix — correction de bug
  • Refactor — modification du code sans changement fonctionnel
  • Docs — documentation uniquement
  • Chore — maintenance (deps, config, etc.)
  • Hotfix — correction urgente en production

Modifications principales

  • client/src/contexts/SocketContext.tsx :
    • Ajout d'une condition vérifiant window.location.protocol === 'https:' pour forcer l'utilisation de window.location.origin (passant le protocole en WSS).
    • Clarification du chemin path pour pointer correctement vers /vmProjetIntegrateurgrp10-0/socket.io sur l'environnement distant.

Comment tester

  1. Se rendre sur la version déployée : https://mai-projet-integrateur.u-strasbg.fr/vmProjetIntegrateurgrp10-0/
  2. Effectuer un rafraîchissement forcé / vidage de cache (Ctrl + F5 ou Cmd + Maj + R) pour purger l'ancien build Vite JS de la mémoire du navigateur.
  3. Se connecter et accéder au Lobby (salles d'attente multijoueur).
  4. Ouvrir la console développeur (F12). Vérifier que la connexion au socket s'établit avec succès et que l'erreur rouge Mixed Content n'apparaît plus.

Checklist

  • Code relu et conforme aux conventions du projet
  • Tests ajoutés ou mis à jour si nécessaire
  • Documentation mise à jour (si applicable)
  • Pipeline CI vert
  • Pas de régression détectée

Impact potentiel

  • Breaking change — migration nécessaire
  • Performance — impacts à surveiller
  • Sécurité — audit recommandé

Reviewers

  • Backend (@azra, @soheil)
  • Frontend (@mohamed, @yigit)
  • Sécurité (@linda, @massi)
  • BDD (@elhadj)
  • Revue générale (@aguech)
  • Validation chef de projet (@omar)
Edited by BADSI MASSI

Merge request reports