私は昨日同じ質問をして、それを解決することができました。
それは正しいです-あなたはパンジャブの設定を必要としません。デフォルトでは、punjabはポート5280で動作します。Punjabはスタンザを目的のサーバーに自動的に転送します。
<body rid='123' xmlns='http://jabber.org/protocol/httpbind' to='yourdomain.tld' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/>
これは、BOSHを介して接続をセットアップするために使用されるスタンザです。'to'属性が表示されます。Punjabは、これからどのXMPPサーバーと通信するかを判断できます。
Openfireの接続マネージャーのセットアップを忘れてください。この機能を完全に無効にしておくことができます。これは、punjabがOpenfireへの通常のXMPP接続を使用するためです(通常のクライアントと同じように)。デフォルトのポート5222で通信します。
だからあなたがしなければならないのは
- 聞くURLをpunjabに伝えます
- パンジャブのデフォルトポート5280でそのURLにプロキシBOSHリクエスト
聞くURLをpunjabに伝えます
punjab.tacファイルには、次のような行があります。
root.putChild('bosh', b) # url for BOSH
したがって、「bosh」は、stropheがスタンザを送信する必要があるURLの一部になり、http://www.yourdomain.tld/boshになります。「/bosh」は「/http-bind」または「/xmpp-httpbind」にすることもできますが、punjab.tacファイルはこれを認識している必要があります。
パンジャブのデフォルトポート5280でそのURLへのプロキシBOSHリクエスト
次に、Webサーバーは「/ bosh」に送信されたリクエストを処理し、ポート5280でパンジャブにプロキシする必要があります。Apacheを使用すると、仮想ホスト構成で次のようになります。
<IfModule proxy_http_module>
ProxyRequests Off
ProxyPass /bosh http://localhost:5280/bosh
ProxyPassReverse /bosh http://localhost:5280/bosh
</IfModule>