CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet résolu : Apache 2.4 et ProxyPass Socket.IO (Node.JS)

DébutPage précedente
1
Page suivantePage suivante
Harm0 Harm0
MP
Niveau 7
18 novembre 2017 à 15:21:05

Hello ! :)

J'ai rencontre un soucis sur de la conf Apache concernant le mod proxy, j'aimerais proxyfier du socket.io derrière un apache en gros.

Mon serveur node occupe un port 1338 :

httpServer.listen(1338);
var io = require("socket.io").listen(httpServer);
 
io.sockets.on("connection", function(socket){
...
}

Côté front, je dois charger le fichier js socket.io.js fourni par le serveur node (donc derrière le proxy Apache dans l'idéal, puis ouvrir un socket :

<script src="/socket.io/socket.io.js"></script>
var socket = io.connect("http://domain.tld/socket.io");

Après une petite centaine d'essais de configs et de bidouillages, j'ai mis cette config dans mon vhost :

RewriteEngine On
RewriteRule /socket.io/1/websocket/ - [R=200,L]
ProxyPass /socket.io/socket.io.js http://127.0.0.1:1338/socket.io/socket.io.js
ProxyPassReverse /socket.io/socket.io.js http://127.0.0.1:1338/socket.io/socket.io.js
ProxyPass /socket.io/1/websocket/ ws://127.0.0.1:1338/socket.io/1/websocket/
ProxyPassReverse /socket.io/1/websocket/ ws://127.0.0.1:1338/socket.io/1/websocket/
ProxyPass /socket.io/1/ http://127.0.0.1:1338/socket.io/1/
ProxyPassReverse /socket.io/1/ http://127.0.0.1:1338/socket.io/1/

Le fichier socket.io.js est bien fourni par le serveur node à travers le proxy, ça c'est nickel !
Par contre, j'ai toujours un problème au moment d'ouvrir mon socket. :-(

GET http://domain.tld/socket.io/?EIO=3&transport=polling&t=L_F7frg 404 (Not Found)
...

L'erreur Apache lié au cas ou :

[Sat Nov 18 13:31:09.431794 2017] [proxy:warn] [pid 22356] [client xx.xx.xx.xx:52436] AH01144: No protocol handler was valid for the URL /socket.io/. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule., referer: http://domain.tld/

Je sèche vraiment, j'y suis depuis hier soir, et à force d'avoir le nez dans les configs, je vois plus rien ^^

Merci d'avance :-d

20_cent_2017 20_cent_2017
MP
Niveau 10
18 novembre 2017 à 16:01:09

Ta pas besoin d'apache pour faire de l’écoute sur du socket ...
D'ailleur c'est ton serveur qui donne le port d'écoute normalement...

Harm0 Harm0
MP
Niveau 7
18 novembre 2017 à 16:04:08

Yep, je sais, mais mon objectif est de coupler un site "classique" (apache, php), et avoir une page qui utilise un socket (donc node), mais que les utilisateurs qui viennent sur le site n'aient besoin d'avoir que le port 80 d'accessible pour que ça soit plus propre et sécurisé.

Message édité le 18 novembre 2017 à 16:04:21 par Harm0
Harm0 Harm0
MP
Niveau 7
19 novembre 2017 à 00:39:37

J'ai finalement trouvé la solution dans l'après-midi, je l'ai posté sur le topic que j'avais créé sur openclassroom pour les intéressés. :)

https://openclassrooms.com/forum/sujet/apache-2-4-et-proxypass-socket-io-node-js

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : Thymotep
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment