Strophe + BOSH + Openfire 配置实例

STROPHE BOSH服务器配置

为了让浏览器具有与xmpp通信的能力,简单几步就可实现,前提是先搭建好XMPP服务器。以下是以openfire为例,详细说明配置XMPP+BOSH服务器的方法。

 

1. 进入Openfire 服务器后台启用HTTP绑定

 

2. 开通服务器7070端口,添加一行iptables的记录,重启服务,重启openfire。

# vi /etc/sysconfig/iptables 

-A INPUT -p tcp -m tcp -p tcp --dport 7070 -j ACCEPT

# service iptables restart

# /etc/init.d/openfire restart #等待10几秒

3. 浏览器输入 http://hostname:7070 检查是否开通。

4. 设置apache代理转发,让javascript拥有跨域通信的能力,CROS。

 

 

#0 打开apache httpd.conf文件,在文件最后添加。

#1第一种方式, 反向代理方式

ProxyRequests Off

ProxyPass /http-bind/ http://127.0.0.1:7070/http-bind/

ProxyPassReverse /http-bind/ http://127.0.0.1:7070/http-bind/

 

JS客户端连XMPP地址

BOSH_SERVICE =“http://remote.com/http-bind/”

 

#2 第二种方式,重写URL规则

<VirtualHost *>

AddDefaultCharset UTF-8

RewriteEngine On

RewriteRule ^/http-bind/ http://127.0.0.1:7070 [P]

</VirtualHost>

 

JS客户端连XMPP地址

BOSH_SERVICE =“http://remote.com:7070/http-bind/”

 

重启APACHE服务器,访问BOSH_SERVICE测试是否生效。

 

 

 

 

 

 

测试结果

JS浏览器端

 

Spark IM 客户端

 

 

 

 

 

 

 

参考连接:

Strophe 文档

http://strophe.im/strophejs/doc/1.2.2/files/strophe-js.html#Strophe.Builder.c

XMPP协议文档

http://wiki.jabbercn.org/RFC3921#.E9.99.84.E5.BD.95_C._Jabber_IM_Presence.E5.8D.8F.E8.AE.AE.E5.92.8CXMPP.E4.B9.8B.E9.97.B4.E7.9A.84.E4.B8.8D.E5.90.8C

http://wiki.jabbercn.org/RFC6120#.E5.85.A8.E5.B1.80.E5.9C.B0.E5.9D.80 

 

下载JS端测试代码:

git@github.com:arist1213/stropheHttpBindOpenfire.git 

转载于:https://my.oschina.net/ym80/blog/482844

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值