本文的英文原文来自 http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/install-guide.html

安装指南

Openfire是一个强大的即时消息(IM)和聊天服务器,它实现了XMPP协议。这份文件将引导您通过安装Openfire。对于更多的功能和信息的完整列表,请访问Openfire网站:http://www.igniterealtime.org/projects/openfire/

目录

安装

Windows

运行Openfire 安装包. 应用缺省将被安装于目录 c:\Program Files\Openfire .

Linux/Unix

可选择RPM包或tar.gz包. 如果使用RPM包, 用你的包管理器运行把它Openfire安装到目录 /opt/openfire:

rpm -ivh openfire_3_0_0.rpm

如果使用.tar.gz包, 解压到目录 /opt 或 /usr/bin:

tar -xzvf openfire_3_0_0.tar.gz
mv openfire /opt

注意: .tar.gz包不一定包含Java虚拟机(JRE). 所以, 你必须之前就有 JDK 或 JRE 1.5.0 (Java 5) 或之后安装到你的系统里. 你可以在命令行键入 "java -version" 来检查你的java版本,然后 (如果必要) 访问 http://java.sun.com 更新你的Java安装.

安装概述

为了完成Openfire的安装, 你需要执行以下步骤:

  1. 数据库 - 如果你选择使用一个外部数据库, 你必须准备为Openfire准备好你的数据库.
  2. 安装 - 使用内置的基于web的安装工具来安装和验证服务器的配置.
  3. 管理控制台 - 使用基于web的管理工具来管理服务器.

本文也包括以下信息:

分发版里的文件

你的分发版里的文件应该像下面这样 (为了简短一点,一些子目录被忽略了):

openfire/
|- readme.html
|- license.html
|- conf/
|- bin/
|- jre/
|- lib/
|- plugins/
|- admin/
|- resources/
|-database/
|-security/
|- documentation/
  • conf 目录Openfire用来存放配置文件.
  • bin 目录包含了服务器的可执行文件. 根据你安装的不同分发版, 可用的执行文件也不同.
  • jre 目录包含了一个 Java 5 虚拟机,打包在Windows和RPM版本Openfire里面的.
  • lib 目录包含了运行Openfire所需要的库.
  • plugins 目录包含了服务器插件. 缺省地, Openfire带了一个基于web的管理控制台插件.
  • resources/database 目录包含 SQL 架构文件,用来新建Openfire数据库, 以及已有安装的更新脚本.
  • resources/security 目录是Openfire维护keystores的地方,用来支持SSL连接安全性.
  • documentation 目录包含了服务器文档.

安装数据库

Openfire能把它的数据存储在一个嵌入式的数据库里,你也能选择使用一个外部数据库,例如MySQL或Oracle. 如果你喜欢使用外部数据库, 你必须在开始安装之前准备好它. 更多信息见数据库安装.

安装服务器

Openfire内建了一个基于web的, "向导"驱动的安装和配置工具. 简单地启动Openfire(分平台的指引如下) 并使用浏览器连接到管理控制台. 基于web的管理控制台的缺省端口是9090. 如果你和Openfire在同一台机器, 以下URL通常会起作用: http://127.0.0.1:9090.

管理控制台

在完成上述步骤之后, Openfire将被配置,你可以用基于web的管理控制台管理服务器. URL应该和你用来安装服务器用的那个一样,除非你在安装期间修改了那个端口.

在Windows下运行Openfire

如果你使用了Openfire安装包, 在你的开始菜单里会有一个快捷方式来启动图形化启动器. 否则, 在你的 Openfire 安装位置的 bin/ 目录运行 openfire.exe . 在启动界面上有一个按钮,允许你自动打开你的web浏览器连接正确的URL来完成服务器的安装

Windows服务

如果你正在Windows下运行Openfire, 你或许想在初始化安装之后把Openfire作为一个标准的Windows来运行. 如果你使用Windows安装包, 一个 openfire-service.exe 文件将会出现在安装目录下的 bin 目录. 你可以使用这个可执行文件来安装和控制Openfire服务.

从控制台窗口, 你可以运行以下命令:

  • openfire-service /install -- 安装服务.
  • openfire-service /uninstall -- 卸载服务.
  • openfire-service /start -- 启动服务.
  • openfire-service /stop -- 停止服务.

    注意: 那个图形化的启动器目前和Windows服务还不兼容. 如果你安装了服务, 你应该使用上述的服务控制台来控制服务而不是这个图形启动器.

    自定义参数

    高级用户可能希望传递参数到Java虚拟机(VM)来定制Openfire的运行时环境. 你可以在你的Openfire安装目录下的 bin/ 目录建立 vmoptions 文件来做到这一点. 对于 Windows服务, 你要建一个新文本文件,名为 openfire-service.vmoptions. 每个给VM的参数应该独立占用文件中的一行. 例如, 设置最小堆栈大小为 512 MB 和最大 VM 堆栈为 1024 MB, 你可以用:

    -Xms512m
    -Xmx1024m

    要新建参数给普通的启动器, 新建一个文件,名为 openfired.vmoptions (因为 openfire.exe 启动器会调用 openfired.exe 可执行文件来实际地启动服务器).

    在Linux/Unix下运行Openfire

    如果你正在一个 Red Hat 或类 Red Hat 的系统上运行 (CentOS, Fedora, 等等), 我们建议使用RPM,因为它包含一些标准的类Red Hat环境的自定义处理. 假设你使用了RPM, 你可以使用 /etc/init.d/openfire 脚本启动和

    # /etc/init.d/openfire
    Usage /etc/init.d/openfire {start|stop|restart|status|condrestart|reload}
    # /etc/init.d/openfire start
    Starting openfire:

    如果你正在一个不同的Linux/Unix变种下运行, 并且/或你使用了tar.gz '安装包', 你可以使用你的Openfire安装目录下的 bin/openfire 脚本启动和

    # ./openfire
    Usage: ./openfire {start|stop}
    # ./openfire start
    Starting openfire

    如果你想把Openfire安装成一个服务, 在 bin/extra 目录提供了两个脚本:

    • redhat-postinstall.sh -- 自动把Openfire安装为Red Hat的服务. 它会新建一个"jive"用户,然后拷贝 openfired 脚本到你的 init.d 目录. 这个脚本必须以root身份来运行. 更多信息请看脚本里的注释.
    • openfired -- 把Openfire当成服务运行的脚本. 你必须手工配置这个脚本. 更多信息请看脚本里的注释.

    如果你通过RPM安装,不推荐你使用这些脚本. RPM已经把这些脚本照顾得很好了.

    自定义参数

    你可以在你的Openfire安装目录下的 bin/ 目录建立 vmoptions 文件来做到这一点. 对于 Windows服务, 你要建一个新文本文件,名为 openfire-service.vmoptions. 每个给VM的参数应该独立占用文件中的一行. 例如, 设置最小堆栈大小为 512 MB 和最大 VM 堆栈为 1024 MB, 你可以用:

    高级用户可能希望传递参数到Java虚拟机(VM)来定制Openfire的运行时环境. 如果你是通过RPM安装的, 你可以编辑 /etc/sysconfig/openfire 文件并找到 OPENFIRE_OPTS 选项来定制它. 如果你通过.tar.gz安装的, 你要调整你的启动脚本来满足你的需要.

    插件

    插件给Openfire增加了额外的特性和协议支持. 在安装完你的Openfire之后, 你可能想下载并安装插件以增进你的服务器. 插件可从 igniterealtime.org 的 plugins 页面下载或直接从内部的管理控制台直接下载.

    安装插件

    如果你从Openfire内部的管理控制台下载了一个插件, 它将被自动安装. 如果你手工下载这个插件(打包成一个.jar文件), 你可以通过把插件文件拷贝到Openfire安装目录下的 plugins/ 目录来布署它. 一个插件监控器将自动解包这个插件到一个目录并安装这个插件到Openfire. 你也可以在管理控制台使用"上传插件"功能(在 插件 标签页) 来从本地文件系统装入一个插件到服务器.

    管理插件

    插件可通过内部的Openfire管理控制台来管理. 你也可以在任何时候通过删除插件的JAR文件来手工删除一个插件(当你这么干了,Openfire将从内存自动移除这个插件并删除它的目录).

Openfire:安装指南的更多相关文章

  1. Linux环境中Openfire安装指南

    Linux环境中Openfire安装指南 安装环境: 安装软件:Openfire 4_1_0 http://download.igniterealtime.org/openfire/openfire_ ...

  2. XMPP 客户端和服务端

    GPLv2授权不能商用 XMPP协议的客户端软件列表 http://zh.wikipedia.org/wiki/XMPP%E5%8D%94%E8%AD%B0%E7%9A%84%E5%AE%A2%E6% ...

  3. Operfire 安装指南

    http://www.cnblogs.com/hoojo/archive/2012/05/13/2498151.html 本文的英文原文来自 http://www.igniterealtime.org ...

  4. 在Openfire上弄一个简单的推送系统

    推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...

  5. Openfire的启动过程与session管理

    说明   本文源码基于Openfire4.0.2.   Openfire的启动       Openfire的启动过程非常的简单,通过一个入口初始化lib目录下的openfire.jar包,并启动一个 ...

  6. Openfire集群源码分析

    如果用户量增加后为了解决吞吐量问题,需要引入集群,在openfire中提供了集群的支持,另外也实现了两个集群插件:hazelcast和clustering.为了了解情况集群的工作原理,我就沿着open ...

  7. openfire的组件(Component)开发

    在之前的文章<Openfire阶段实践总结>中提到过一种openfire的扩展模式Compoent.本文将主要探讨对这种模式的应用与开发方法. 内部与外部组件介绍 在openfire中的许 ...

  8. Openfire阶段实践总结

    从3月开始研究Openfire,其实就是要做一套IM系统,也正是这个原因才了解到Openfire.之前还真没想过有这么多的开源产品可以做IM,而且也没想到XMPP这个协议竟然如何强大.看来还是标准为先 ...

  9. 技术笔记:XMPP之openfire+spark+smack

    在即时通信这个领域目前只找到一个XMPP协议,在其协议基础上还是有许多成熟的产品,而且是开源的.所以还是想在这个领域多多了解一下. XMPP协议:具体的概念我就不写了,毕竟这东西网上到处是.简单的说就 ...

随机推荐

  1. [Andrew]Grid列编辑实现

    Html.X().GridPanel()                .Plugins(Html.X().CellEditing())                .Listeners(l =&g ...

  2. [liu yanling]软件测试的过程

    测试过程按4个步骤进行,即单元测试.组装测试.确认测试和系统测试.

  3. BestCoder Round #81 (div.1)A

    水题...就是n的三进制后m位 #include<cstdio> #include<cstring> #include<cstdlib> #include<i ...

  4. HDOJ-ACM1022(JAVA)

    这道题:是模拟出栈,判断出栈顺序的可能性. 基本上大家的做法都是直接模拟栈的出栈入栈并将顺序用0,1序列来表示,我暂时没想到什么好的思路. import java.util.*; import jav ...

  5. Markdown中实现缩进的方法

    markdown中实现缩进的方法 在每一行开头的时候,先输入下面的代码,然后紧跟着输入文本即可.注意有分号. 半角空格:  或   全角空格:  或   不换行空格:  或  

  6. null值是不会算在count以内的

    做统计的时候,null是不计算在count以内的.所以字段的值最好不要设置为null. 比如:select count(user_id) as beyond_num from fs_users_add ...

  7. Fastjson反序列化泛型类型时候的一个问题

    import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import java.u ...

  8. tomcat安全配置之证书密码加密存储

    最近项目组要完成一个新Web Servicer接口的开发,其中有项要求是支持外部客户程序以https方式访问这些SOAP接口.项目组当前基于tomcat6.0.29开发,axis版本为1.4.拿到这个 ...

  9. celery expires 让celery任务具有时效性

    起因:有的时候.我们希望任务具有时效性.比方定时每5分钟去抓取某个状态,由于celery队列中的任务可能非常多,等到这个任务被运行时.已经超过了5分钟,那么这个任务的运行已经没有意义.由于下一次抓取已 ...

  10. mysqld with valgrind

    使用编译脚本编译MariaDB 现在进入源代码目录并执行符合你的配置的编译脚本,比如: cd $maria-source-dir # ex: ~/repos/maria/trunk BUILD/com ...