RocketChat WebSocket par ReverseProxy

Lorsque l'on installe RocketChat, il faut savoir que l'on passe par un reverse proxy. Or, sans le websocket, nous n'avons pas accès à notre serveur sur les client Desktop/Mobiles.

Il existe une technique pour l'activer, et c'est de cela que nous allons parler.

Voici comment faire :

Tout d'abord, activons le module correspondant à cette option :

root@Web-01:~# a2enmod proxy_wstunnel

Ensuite, nous allons configurer le VirtualHost HTTPS (Si nous utilisons la redirection vers le HTTPS) :

<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerAdmin clement@cazevieille.com
        ServerName im.cazevieille.me

 <Proxy *>
        Order deny,allow
        Allow from all
 </Proxy>

#ProxyPreserveHost On
ProxyPass / http://192.168.1.107:3000/
ProxyPassReverse / http://192.168.1.107:3000/


RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*)           ws://192.168.1.107:3000/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket [NC]
RewriteRule /(.*)           http://192.168.1.107:3000/$1 [P,L]

SSLCertificateFile /etc/letsencrypt/live/im.cazevieille.me/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/im.cazevieille.me/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>


</IfModule>
Back to top