使用仅支持 node-xmpp-bosh 的 http 的 https

Use https with only http supporting node-xmpp-bosh

简介

我使用 converse.js 作为 XMPP 网络客户端。因此我需要一个处理双向通信的 bosh 服务器。 因此,服务器行为 node-xmpp-bosh。由于我的站点是 SSL/TLS 加密的,并且只能通过 https 访问,因此只能通过加密通信连接到 bosh 服务器。 不幸的是 node-xmpp-bosh 不支持 SSL/TLS.

问题

我可以通过某种方式转发流量来规避这个问题吗?还是我迷路了,需要搜索另一台 bosh 服务器?

几个小时后...又开心了:)

我的问题的解决方案是将流量代理到 bosh 服务器。要在 Apache 上执行此操作,我现在(或至少目前)使用此 VirtualHost 配置:

<VirtualHost *:443>
    ServerName bosh.domain.tld
    ServerAlias www.bosh.domain.tld

    ServerAdmin admin@domain.tld

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

    ProxyPass / http://127.0.0.1:5280/http-bind/
    ProxyPassReverse / http://127.0.0.1:5280/http-bind/


    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/domain.tld/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/domain.tld/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/domain.tld/chain.pem
    SSLVerifyClient None
    # HSTS (mod_headers is required) (15768000 seconds = 6 months)
    Header always set Strict-Transport-Security "max-age=15768000"
</VirtualHost>