Salut !

J'ai un serveur nodejs qui fonctionne avec socket.io.
Je redirige un nom de domaine vers l'adresse ip de mon serveur avec le port utilisé pour le serveur nodejs.

Le vHost fonctionne bien, le proxy se fait mais je voudrais savoir si le code est bien écrit et est au norme ?

J'aimerai aussi que lorsqu'un visiteur va sur io.monsite.fr, une page 404 ou 403 soit renvoyée, parce que la page tourne en rond quand on va dessus.
Ca vient du fichier server.js, mais comment faire pour qu'une redirection soit faite ?

Mercii

<VirtualHost *:80 *:443>
    ServerAdmin admin@monsite.fr
    ServerName  io.monsite.fr 
    # io.monsite.fr est redirigé vers io.monsite.fr:3016 (le serveur nodejs en question)

    SSLEngine on
        SSLProxyEngine on
        SSLProxyVerify none
        SSLProxyCheckPeerCN off
        SSLProxyCheckPeerName off
        SSLProxyCheckPeerExpire off
        SSLCertificateFile      /etc/ssl/certs/cert.crt
        SSLCertificateKeyFile   /etc/ssl/private/key.key
        SSLCertificateChainFile /etc/ssl/certs/cert_int.crt

    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/socket.io [NC]
    RewriteCond %{QUERY_STRING} transport=websocket [NC]
    RewriteRule /(.*) wss://io.monsite.fr:3016/$1 [P,L]

        ProxyRequests off

        <Proxy *>
            Order deny,allow
            Allow from all
        </Proxy>
        ProxyPass /socket.io/1/websocket wss://io.monsite.fr:3016/socket.io/1/websocket
        ProxyPassReverse /socket.io/1/websocket wss://io.monsite.fr:3016/socket.io/1/websocket

        ProxyPass /socket.io/ https://io.monsite.fr:3016/socket.io/
        ProxyPassReverse /socket.io/ https://io.monsite.fr:3016/socket.io/

        ProxyPass / https://io.monsite.fr:3016/
        ProxyPassReverse / https://io.monsite.fr:3016/

</VirtualHost>

1 réponse


kubz
Réponse acceptée

Hello,

Je me permet de répondre un peu à côté pour juste t'aider à avancer : Est-ce qu'aujourd'hui c'est un point bloquant pour ton projet le fait que si un utilisateur va sur une autre URL que /socket.io il puisse ne rien voir ? Tu te prends la tête sur des fonctions (selon moi) qui ne sont pas les features principales de ton site (je suppose) et surtout ça te prend du temps alors que ce n'est pas un vrai pb (toujours selon moi).

Mise à part ce premier point, regarde du côté des Location

Tu fais une Location /socket.io et les autres Location comme / par exemple, tu fais des redirects.