openfire + strophe.js + apache http + tomcat7

openfire 3.9.3

strophe.js 1.3

apache http 2.2.25

 

所以的安装都是在本机

 

1.openfire的安装

   解压官网的压缩包,直接运行bin中的启动文件,依据向导设置即可,没有特别需要注意的地方

 

2.web连接,如果不在同一个域,则需要设置带来,参照网上的nagix没设置成功,apache设置如下

ProxyRequests Off
ProxyPass /http-bind http://127.0.0.1:7070/http-bind/
ProxyPassReverse /http-bind http://127.0.0.1:7070/http-bind/

 

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so

 

打开注释了的代理模块

 

注:当用web请求时,可以查看apache的日志, 看是否日志记录已通过代理访问,判断是代理没配置对问题还是xmpp服务器问题

 

3.bosh连接,openfire需要在HTTP设置中打开bosh相关属性为true,界面上面配置很清楚明了.

4.解压strophe.js,将examples文件夹直接放到web项目中的webroot中,

打开basic.js设置

var BOSH_SERVICE = 'http://localhost/http-bind';  //默认会通过代理请求到http://127.0.0.1:7070/http-bind/

 

5.浏览器访问basic.html

输入jid:如   test@localhost  密码

需有此用户存在

 

当点击connect的时候,openfire日志会提示错误如下:

2014.10.26 11:39:48 org.jivesoftware.openfire.http.HttpBindServlet - Client provided invalid session: 6c9e5f4. [127.0.0.1]

 

strophe的响应xml时:not-验证

一直通过搜索这些信息查询,最后还是没有找到原因。

 

最后ecplise中调试openfire源码,发现是javax.security.sasl.SaslException: DIGEST-MD5: digest response format violation. Mismatched URI: xmpp/localhost; expecting: xmpp/mydomain 

(mydomain是openfire的域名)

将登陆的jid修改为test@mydomian  既可以正常访问和接受消息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tof21

支持原创

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值