基于openfire + jwchat 的 WEB IM
宋飞文
2023-12-01
关于Openfire 我想大多数人还不是很了解在这里先简单的介绍一下Openfire
Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。
那么XMPP是什么?大家可以去看我的上一篇文章,在这里就不多介绍了。
开始进入今天的主题
首先是安装openfire:
怎么安装Windows环境下的openfire,大家可以去看看这位大神写的文章,地址http://www.lanezhao.com/呵oojo/archive/2012/05/17/2506769.html
安装linux环境下的openfire:
1、下载openfire安装包:openfire_3_5_1.tar.gz 拷贝到/opt目录,进入/opt运行以下命令进行安装。
[root@localhost root]# cd /opt
[root@localhost opt]# tar -xzvf openfire_3_5_1.tar.gz
2、在mysql中创建数据库
[root@localhost root]# mysql
mysql> create database openfire;
3、导入mysql数据录对应的sql,创建数据表
mysql> use openfire
mysql> source /opt/openfire/resources/database/openfire_mysql.sql;
4、启动openfire
[root@localhost root]# /opt/openfire/bin/openfire start
5、打开浏览器开始设置openfire
据有关人士提醒,linux的hostname必须设置和该主机IP对应域名一致。
url:http://[server ip]:9090
根据向导设置,其中数据库选择“外部数据库”
DB SERVER url:http://[server ip]:3306/openfire?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8
6、openfire安装完毕了,默认管理员用户名密码为 admin 123456
今天主要是将如何去安装jwchat。
1、下载jwchat.war,下载地址:http://www.iteye.com/topic/154697
2、将jwchat.war放置到webapps目录下;
3、在tomcat 的 conf/server.xml中 hostname下添加
<Context path="/jwchat" docBase="jwchat.war" debug="0" privileged="true"></Context>
启动tomcat失败。但是在webapps下产生了jwchat目录,于是把<Context/>改成
<Context path="/jwchat" docBase="jwchat" debug="0" privileged="true"></Context>
启动tomcat成功,可以访问 http://localhost:8080/jwchat 了,但是不能登录,报错:service unavailable
4、参照mircle的《构建 基于openfire + jwchat 的 WEB IM》一文,
修改jwchat/config.js
var SITENAME = "computer"; // 此处为openfire所设置的 域名
var BACKENDS =
[
{
name:"Open Relay",
description:"HTTP Binding backend that allows connecting to any jabber server",
httpbase:"/jwchat/JHB/", //此处为修改后的值 原值为 /JHB/
type:"binding",
default_server: SITENAME
}
];
再登录,还报错:service unavailable
在jwchat/jsjac.js中找到
if(this.has_sasl)行 (如果你的编辑器有行号 ,大概在302行)
在它前面加上this.has_sasl = false;
如果此时你进入之后还是显示service unavailable,我还有一个方法:你把地址改为http://127.0.0.1:8080/jwchat/ 就应该可以了
如果大家还有什么问题,可以留言,或者要源码也可以留言