In addition to mod_proxy, mod_proxy_wstunnel must be enabled. Without it, websocket requests won't get proxied.

LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so

Current vhost config on my mac for praxis2 app and web conferencing app:

<VirtualHost *:443>
    ServerName praxis2.moka.net
    ServerAdmin paul.h.monk@gmail.com

    # SSL
    SSLEngine on
    SSLProtocol all -SSLv2
    SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
    SSLCertificateFile "/Users/moka/work/jibc/praxis/praxis2/2_0_0/ssl/praxis2.moka.net.crt"
    SSLCertificateKeyFile "/Users/moka/work/jibc/praxis/praxis2/2_0_0/ssl/praxis2.moka.net.key"
    # SSLCertificateChainFile "/Applications/XAMPP/xamppfiles/etc/ssl.crt/server.crt"

    <Proxy *>
    Require all granted
    </Proxy>

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

    ProxyRequests Off
    ProxyVia on

    # http requests
    ProxyPass / http://localhost:1337/
    ProxyPassReverse / http://localhost:1337/

    # wss to ws
    ProxyPassMatch ^/(.*)/socket.io ws://localhost:1337/$1/socket.io

    ProxyPass /socket.io/ ws://localhost:1337/socket.io
    ProxyPassReverse /socket.io/ ws://localhost:1337/socket.io

    # for websocket requests
    RewriteEngine On
    RewriteCond %{REQUEST_URI}  ^/socket.io            [NC]
    RewriteCond %{QUERY_STRING} transport=websocket    [NC]
    RewriteRule /(.*)           ws://localhost:1337/$1 [P,L]

    #RewriteCond %{QUERY_STRING} transport=polling
    #RewriteRule /(.*)$ http://localhost:1337/$1 [P]

    ErrorLog "/Users/moka/work/jibc/praxis/praxis2/2_0_0/logs/www_error.log"
    CustomLog "/Users/moka/work/jibc/praxis/praxis2/2_0_0/logs/www_access.log" common
</VirtualHost>

<VirtualHost *:443>
    ServerName easyrtc.moka.net
    ServerAdmin paul.h.monk@gmail.com

    Header set Access-Control-Allow-Origin "https://praxis2.moka.net"
    Header set Access-Control-Allow-Credentials "true"
    Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept"

    ProxyRequests Off
    ProxyVia on
    ProxyPass / http://localhost:1338/
    ProxyPassReverse / http://localhost:1338/

    # wss to ws
    ProxyPassMatch ^/(.*)/socket.io ws://localhost:1338/$1/socket.io

    ProxyPass /socket.io/ ws://localhost:1338/socket.io
    ProxyPassReverse /socket.io/ ws://localhost:1338/socket.io

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

    # for websocket requests
    RewriteEngine On
    RewriteCond %{REQUEST_URI}  ^/socket.io            [NC]
    RewriteCond %{QUERY_STRING} transport=websocket    [NC]
    RewriteRule /(.*)           ws://localhost:1338/$1 [P,L]

    RewriteCond %{QUERY_STRING} transport=polling
    RewriteRule /(.*)$ http://localhost:1338/$1 [P]

    # SSL
    SSLEngine on
    SSLProtocol all -SSLv2
    SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
    SSLCertificateFile "/Users/moka/work/jibc/praxis/praxis2/2_0_0/ssl/easyrtc.moka.net.crt"
    SSLCertificateKeyFile "/Users/moka/work/jibc/praxis/praxis2/2_0_0/ssl/easyrtc.moka.net.key"

    # SSLCertificateChainFile "/Applications/XAMPP/xamppfiles/etc/ssl.crt/server.crt"

    ErrorLog "/Users/moka/work/jibc/praxis/praxis2/2_0_0/logs/easyrtc_error.log"
    CustomLog "/Users/moka/work/jibc/praxis/praxis2/2_0_0/logs/easyrtc_access.log" common
</VirtualHost>