
- Ajout de docs/WEBSOCKET_CONFIGURATION.md - Gestion d'erreurs WebSocket améliorée - Tests WebSocket documentés - Problème persistant Nginx documenté
2.2 KiB
Configuration WebSocket - sdk_relay
Configuration actuelle
Variables d'environnement
WS_BIND_URL
: URL de binding WebSocket (défaut:0.0.0.0:8090
)HEALTH_PORT
: Port du serveur de santé (défaut:8091
)HEALTH_BIND_ADDRESS
: Adresse de binding du serveur de santé (défaut:0.0.0.0
)
Configuration dans sdk_relay.conf
ws_url="0.0.0.0:8090"
blindbit_url="http://blindbit-oracle:8000"
bootstrap_url="wss://dev3.4nkweb.com/ws/"
bootstrap_faucet=true
sp_address="tsp1qqgmwp9n5p9ujhq2j6cfqe4jpkyu70jh9rgj0pwt3ndezk2mrlvw6jqew8fhsulewzglfr7g2aa48wyj4n0r7yasa3fm666vda8984ke8tuaf9m89"
RUST_LOG="INFO"
Problèmes résolus
1. Binding sur 127.0.0.1 au lieu de 0.0.0.0
Problème : Le relay se liait sur 127.0.0.1:8090
au lieu de 0.0.0.0:8090
.
Solution : Externalisation de la configuration via variables d'environnement et correction du code Rust.
2. Gestion des erreurs WebSocket
Problème : Erreurs de handshake WebSocket non gérées correctement.
Solution : Amélioration de la gestion d'erreurs avec log::warn!
au lieu de log::error!
pour les tentatives de connexion non-WebSocket.
3. Configuration externalisée
Problème : IP et ports hardcodés dans le code Rust.
Solution : Externalisation de tous les paramètres de configuration via variables d'environnement.
Tests WebSocket
Test avec headers corrects
curl -v -H "Upgrade: websocket" \
-H "Connection: upgrade" \
-H "Sec-WebSocket-Version: 13" \
-H "Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==" \
http://127.0.0.1:8090/
Résultat attendu : HTTP/1.1 101 Switching Protocols
Test sans headers WebSocket
curl -v http://127.0.0.1:8090/
Résultat attendu : Erreur de handshake WebSocket (normal)
Problème persistant
Nginx ne transmet pas les headers WebSocket
Statut : ⚠️ Problème persistant
- Nginx configuré avec tous les headers WebSocket
- Le relay reçoit toujours des connexions sans headers
- Erreur :
"No Upgrade: websocket header"
Investigation : La configuration Nginx semble correcte mais les headers ne sont pas transmis.
Date de mise à jour
2025-01-20 - Configuration WebSocket externalisée et problèmes de binding résolus