ubuntu下的openfire安装、配置、运行
- openfire服务器
- openfire目录结构
openfire/
|- readme.html
|- license.html
|- conf/
|- bin/
|- jre/
|- lib/
|- plugins/
|- admin/
|- resources/
|-database/
|-security/
|- documentation/
openfire目录作用介绍
conf 目录Openfire用来存放配置文件.
bin 目录包含了服务器的可执行文件. 根据你安装的不同分发版, 可用的执行文件也不同.
jre 目录包含了一个 Java 5 虚拟机,打包在Windows和RPM版本Openfire里面的.
lib 目录包含了运行Openfire所需要的库.
plugins 目录包含了服务器插件. 缺省地, Openfire带了一个基于web的管理控制台插件.
resources/database 目录包含 SQL 架构文件,用来新建Openfire数据库, 以及已有安装的更新脚本.
resources/security 目录是Openfire维护keystores的地方,用来支持SSL连接安全性.
documentation 目录包含了服务器文档 - ubuntu下openfire安装的前期工作
1、至少是JDK1.5
2、支持Servlet 2.3
3、支持JSP 1.2
4、Openfire 类
5、安装oracle数据库,如果使用外部数据库,而不是使用openfire自带的内嵌数据库,则根据自己需要安装数据库
- ubuntu下的openfire安装
1、从http://www.igniterealtime.org/downloads/index.jsp#openfire下载最新版的openfire
2、解压openfire文件
tar -xzvf openfire_3_9_1.tar.gz
3、将已解压的openfire目录移到usr下
mv /home/download/openfire /usr/openfire
4、在/etc/profile中设置openfire的环境变量
export OPENFIRE_HOME=/usr/openfire
export PATH=$PATH:$OPENFIRE_HOME/bin
5、给openfire目录加上可执行权限
chmod +x $OPENFIRE_HOME/bin/openfire
6、创建一个独立执行的openfire账户和密码
useradd openfire #设置openfire的系统用户名,下面会使用到
passwd XXXXXX #设置密码
7、设置openfire的执行账户和密码
8、将/usr/openfire/bin/extra/openfired文件拷贝到init.d文件中
9、openfired是一个bash文件,用于将openfire设置为守护进程,随机启动,给openfired授予可执行权限
chmod +x openfired
10、打开openfired文件,进行部分配置
a)设置执行openfire用户
export OPENFIRE_USER=openfire
b)修改CMD="./openfire.sh $1"为
CMD="./openfire $1"
c)进行文件链接
cd /etc/rc3.d
ln -s ../init.d/openfired $90openfired
11、openfire启动和停止
openfire start
openfire stop
openfire restart
12、openfire随机自启动
chkconfig --add openfire
chkconfig openfire on
chkconfig --list openfire
- 安装过程中遇到的错误问题哦错误
在安装openfire中出现错误,openfire的提示信息不够详细,可以在linux的错误日志文件查看具体错误原因
cat /logs/error.log
错误1:
TNS:listener does not currently know of SID given in connect descriptor
原因:
数据库驱动配置出现错误或者数据库访问账户错误
错误2、
The Openfire database schema does not appear to be installed. Follow the installation guide to fix this error.
实际原因是openfire在创建自身表时因为表空间太小导致执行创建sql语句错误
- openfire的运行配置
1、openfire的web访问
http://[server IP]:9090,初次默认用户名和密码都是admin
2、语言选择
3、服务器域修改成对应的服务器ip,设定对应的端口号,默认为9090
4、选择数据库,若是需要使用外部数据库,需要选择标准数据库连接,否则使用openfire内嵌的数据库
5、配置标准数据库连接信息,选择相应的数据库类型,设置数据库驱动、用户名、密码
- openfire插件管理
openfire支持插件管理模式,可以通过登录web模式,在插件菜单中,选择需要上传的插件jar包。插件的存放位置是在/usr/openfire/plugins目录中
上传插件后,需要重启openfire服务器
#openfire stop
#openfire start
- openfire插件开发
1、openfire源代码
2、vivi插件编译环境为jdk1.6,因为openfire实现的代码比较老旧,为了兼容openfire
3、xmpp协议栈实现源代码smck源代码
4、查看openfire源代码
5、查看openfire数据库,从openfire官网上面查看,中文有但比较老旧,英文最新的
6、数据库访问接口采用jdbc并通过泛型类实现
7、apns需要使用开源的javapns包
8、openfire服务器中有 Push 和 IM 个模块,其中Push又分为Android的模块和iOS模块。
10、openfire的错误日志放在/usr/openfire/logs/error.log
ubuntu下的openfire安装、配置、运行的更多相关文章
- ubuntu下nginx+PHP-FPM安装配置
安装nginx apt-get install nginx 配置nginx 位置: /etc/nginx/nginx.conf ,其中包含了 include /etc/nginx/conf.d/*. ...
- Linux(Ubuntu)下MySQL的安装与配置
转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...
- Ubuntu下opencv的安装及IDEA开发配置
Ubuntu下opencv的安装及IDEA开发配置 环境配置 这篇博客主要介绍Ubuntu下opencv的安装编译,以及IDEA对opencv进行Java开发的环境配置 安装opencv 首先安装o ...
- Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法
Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法 最近由于老师要求要在Ubuntu下QT上进程多线程服务器的开发,虽然只是单纯的调用qt的network模块,但是为了避免麻烦,我 ...
- ubuntu中VNC的安装配置笔记
使用服务器时,利用远程桌面是非常方便的,否则需要跑到服务器机房操作非常的费事,或者需要远程操作机器是也可以使用,一般的操作系统都会带有远程桌面功能,但是不如第三方的的软件好用,对于linux系统常用的 ...
- ubuntu 下搭建apache+python的运行环境
ubuntu下怎么搭建apache+python运行环境,可以参考http://www.01happy.com/ubuntu-apache-mod-python/ ,这里只是简单的记录下步骤,本文主要 ...
- 2010-01-20 12:09 ubuntu下minicom的安装及使用
转http://hi.baidu.com/npugtawqdnbgqrq/item/106f805409b42813db163527 ubuntu下minicom的安装及使用 安装: sudo apt ...
- ubuntu下root和安装mysql
sudo password创建新的root密码: 1.用当前登录用户打开终端,在终端输入命令 sudo passwd,输入当前用户的密码然后回车 2.会提示输入新密码,输入完成后回车(http://w ...
- ubuntu下Open vSwitch安装
ubuntu下Open vSwitch安装 有关Open vSwitch的安装,网上有各种的教程资料,但一些已经过时,按照网上的教程,花费了大量时间,都没能安装成功.于是,通过查阅官方安装教程以及综合 ...
随机推荐
- X/Open DTP——分布式事务模型
转载:http://www.cnblogs.com/aigongsi/archive/2012/10/11/2718313.html 这一几天一直在回顾事务相关的知识,也准备把以前了解皮毛的知识进行一 ...
- GO语言中的指针
http://www.tizgrape.com/?p=100 Go语言中的指针语法和C++一脉相承,都是用*作为符号,虽然语法上接近,但是实际差异不小. Go使用var定义变量: var v6 *in ...
- VS中无法加入断点进行调试解决方案
原文地址:http://blog.csdn.net/gukesdo/article/details/6535054 [ 1] 以前也遇到过同样的问题,但没有问个为什么,也没有探个毕竟.昨天调试一个DL ...
- jsp的url后跟中文参数传参出现乱码
①重新编码:String urlParam= request.getParameter("urlParam"); urlParam= new String(urlParam.ge ...
- javascript中神奇的(+)加操作符
javascript是一门神奇的语言,这没神奇的语言中有一个神奇的加操作符. 常用的加操作符我们可以用来做: 加法运算,例如:alert(1+2); ==>3 字符串连接,例如:alert(“a ...
- Android GradientDrawable类的详解,设置activity的背景颜色渐变效果
看到这个例子的标题RoundRects,我的第一感觉是介绍RoundRectShape, 打开例子看了代码却是使用GradientDrawable来实现的. GradientDrawable 支持使用 ...
- Netty实现服务端客户端长连接通讯及心跳检测
通过netty实现服务端与客户端的长连接通讯,及心跳检测. 基本思路:netty服务端通过一个Map保存所有连接上来的客户端SocketChannel,客户端的Id作为Map的key.每 ...
- bzoj3166
首先不难想到穷举次大数然后我们只要找到满足这个数是次大数的最大区间即可显然答案只可能是这两种[LL[i]+1,R[i]-1]和[L[i]+1,RR[i]-1]L[i]表示这个数ai左侧第一个比它大的数 ...
- 进程创建函数fork()、vfork() ,以及excel()函数
一.进程的创建步骤以及创建函数的介绍 1.使用fork()或者vfork()函数创建新的进程 2.条用exec函数族修改创建的进程.使用fork()创建出来的进程是当前进程的完全复制,然而我们创建进程 ...
- 解决导入lib,关联源码问题
关联源代码:在libs目录下新建文件,以jar包全名(包括.jar)为文件名称,以.properties结尾 在文件中新建键值对:src=jar包源代码绝对路径:根据提示将单斜线变成双斜线, 然后cl ...