OpenFire安装好后,我又安装了JWChat做为Client,目前OpenFire 已经支持HTTP Binding,因此JWChat不用再依赖JHB(JabberHTTPBinding),但是在实际安装时还是遇到一些问题,这里记录一下:
1. 首先是下载JWChat 1.0,http://blog.jwchat.org/jwchat/download/;
2. 直接解压安装包(不是安装)到自己的目录;
3. 这里要注意解压后的文件不能直接使用,需要把所有以“.js.js”结尾的文件改为“.js”文件,把“.html.html”结尾的文件改为“.html”文件;
Linux 下运行如下命令修改文件名:
rename “.js.js” “.js” *.js.js
rename “.html.html” “.html” *.html.html
另外压缩包里提供了多语言版本,不过需要我们手工改变其扩展名,如想要中文界面则需修改“.zh_CN”结尾的文件名
rename “.js.zh_CN” “.js” *.js.zh_CN
rename “.html.zh_CN” “.html” *.html.zh_CN
4. 检查Apache 2的/usr/local/apache2/modules目录下是否包含 mod_proxy.so, mod_proxy_http.so和mod_rewrite.so,如果没有则需要重新编译apache (我就重新build了几次),注意在build时需要在./configure命令行上添加
a) enable-rewrite=shared
b) enable-proxy=shared
c) enable-proxy-http=shared
5. 检测/apache2/conf/httpd.conf文件中是否包含如下配置,如果没有需要手工添加
a) LoadModule rewrite_module modules/mod_rewrite.so
b) LoadModule proxy_module modules/mod_proxy.so
c) LoadModule proxy_http_module modules/mod_proxy_http.so
6. 在/apache2/conf/httpd.conf文件尾部添加如下配置
AddDefaultCharset UTF-8
Options +MultiViews
RewriteEngine On
ProxyPass /http-bind/ http://your.ip:7070/http-bind/
这里的7070端口是OpenFire默认的HTTP Binding端口,我们可以在OpenFire的管理控制台上修改
7. 重新启动Apache服务器
8. 修改/jwchat/config.js文件里面的SITENAME为OpenFie的域名
9. 在OpemFire的管理控制台增加两个服务器属性:
xmpp.httpbind.client.requests.polling = 0
xmpp.httpbind.client.requests.wait = 10
10. 打开浏览器,运行http://your.ip/jwchat/,在“Choose Backend”选择“Native Binding”,输入用户名和密码即可登陆;
注意:登陆时如果出现“Server unavailable”,则说明步骤4~7之间的可能有错;
如果出现“authorization failed”,则可能是SSL不支持的原因,需要修改/jwchat/ jsjac.js文件,在if(this.has_sasl) this.oDbg.log… 前面加上this.has_sasl=false;
################################
把 jwchat.war 放到webapps下热部署, 修改 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
}
];
OpenFire的安装记录:
http://blog.csdn.net/simonhe1973/archive/2009/01/15/3789091.aspx