Openfire使用上的一些技巧
2015-09-22 12:52
417 查看
Openfire使用上的一些技巧
作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs1、把Openfire安装为系统服务
对于RedHat、CentOS、Fedora之类的系统,可以采用RPM包安装Openfire,安装后自然有了Openfire服务。此时可以通过命令启动或停止Openfire:# /etc/init.d/openfire stop/start/restart/reload
如果是通过.tar.gz解压安装的Openfire,那么Openfire的启动或停止可以通过命令:
# ./bin/openfire start/stop
这种方式下,要把Openfire安装为系统服务,在Openfire的bin/extra子目录下有两个脚本:
1)redhat-postinstall.sh脚本
适合RedHat系统,可以自动把Openfire安装为系统服务。它会创建一个名为“jive”的用户,并把openfired复制到init.d目录,且此脚本必须以root权限执行。2)openfired脚本
把Openfire作为系统服务的脚本。必须手动配置此脚本。稍后详细介绍如何配置。2、自定义参数
高级用户在运行Openfire时,可以传递一些参数给JVM,以获得更好的性能。如果Openfire是通过RPM安装的,那么可以编辑/etc/sysconfig/openfire,找到OPENFIRE_OPTS选项进行调整。
如果是通过TAR解压安装的,那么需要自行调整启动脚本以满足所需。
3、插件
插件使得Openfire可以支持额外的功能和协议。在服务器安装Openfire后,可以下载并安装插件来增强Openfire服务器。插件可以从igniterealtime.org插件页面或直接在管理控制台下载。插件网页:http://www.igniterealtime.org/projects/openfire/plugins.jsp
1)安装插件
如果是从服务器的管理控制台下载插件,那么插件会自动安装。如果是手动下载的插件(jar文件),可以将此插件文件复制到Openfire的plugins子目录。Openfire的插件监视器会自动扫描到新插件并自动完成安装。Openfire的管理控制台有“上传插件”功能,可以从本地文件系统上传插件并自动完成加载。
2)管理插件
可以在Openfire的管理控制台进行管理。可以手动删除plugins子目录的插件JAR文件,Openfire会自动从内存中删除插件,并删除它的目录。4、添加中文支持
在conf子目录编辑openfire.xml配置文件,在处添加以下内容:?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8 即: <driver>com.mysql.jdbc.Driver</driver> <serverURL>jdbc:mysql://111.111.111.11:3306/openfiredb?rewriteBatchedStatements=true?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8</serverURL> <username encrypted="true">08d7675ce83b8f765d0eaasdfasasdf9d8943ad4f8edf</username> <password encrypted="true">d1e1f004f6c252e04ab0ae6d02beb14e471e6002e0bb621</password> <testSQL>select 1</testSQL>
5、修改Openfire的Domain域值
与Tigase不同,Openfire安装后,它的配置属性不是写入XML文件中,而是基本上都存到数据库表里。配置属性所在的数据表为ofProperty表
mysql> select * from ofProperty; +--------------------------------------------+----------------------------------------------------------------------------------+ | name | propValue | +--------------------------------------------+----------------------------------------------------------------------------------+ | adminConsole.port | 9090 | | adminConsole.securePort | 9091 | | connectionProvider.className | org.jivesoftware.database.DefaultConnectionProvider | | database.defaultProvider.connectionTimeout | 1.0 | | database.defaultProvider.driver | com.mysql.jdbc.Driver | | database.defaultProvider.maxConnections | 300 | | database.defaultProvider.minConnections | 10 | | database.defaultProvider.password | b10f78asdfasdda441f52345234425215eba110 | | database.defaultProvider.serverURL | jdbc:mysql://111.111.111.11:3306/openfiredb?rewriteBatchedStatements=true | | database.defaultProvider.testAfterUse | false | | database.defaultProvider.testBeforeUse | false | | database.defaultProvider.testSQL | select 1 | | database.defaultProvider.username | df94csdfas5d71aefb9183asdfs80fbbb7 | | locale | zh_CN | | locale.timeZone | Asia/Taipei | | passwordKey | 0N5fddsanisYAnD | | provider.admin.className | org.jivesoftware.openfire.admin.DefaultAdminProvider | | provider.auth.className | org.jivesoftware.openfire.auth.DefaultAuthProvider | | provider.group.className | org.jivesoftware.openfire.group.DefaultGroupProvider | | provider.lockout.className | org.jivesoftware.openfire.lockout.DefaultLockOutProvider | | provider.securityAudit.className | org.jivesoftware.openfire.security.DefaultSecurityAuditProvider | | provider.user.className | org.jivesoftware.openfire.user.DefaultUserProvider | | provider.vcard.className | org.jivesoftware.openfire.vcard.DefaultVCardProvider | | setup | true | | update.lastCheck | 1441615953135 | | xmpp.auth.anonymous | true | | xmpp.domain | ubuntu | | xmpp.session.conflict-limit | 0 | | xmpp.socket.ssl.active | true | +--------------------------------------------+----------------------------------------------------------------------------------+ 29 rows in set (0.00 sec)
可见,domain域的配置见xmpp.domain这一行。
修改它的值即可。
mysql> update ofProperty set propValue='tt.com' where name='xmpp.domain';
但是要注意,要让修改后的domain域生效,需要重启Openfire服务器。
# cd /opt/openfire/ # ./bin/openfire restart Shutting down openfire Stopped. Restarting openfire
此时可以用XMPP客户端进行验证,OK!
但实际上,这一步还没真正完成。Openfire在修改Domain域值后,它相应的证书也就无效了,需要重新生成证书(哪怕是自签名的证书)。而生成自签名的证书步骤可以简单这么做:
1)停止Openfire服务
2)修改conf子目录下的openfire.xml配置文件,把true
改为false
3)启动Openfire
4)浏览器访问http://server:9090,对Openfire重新配置,会自动生成自签名证书来匹配新域值。
5)完成配置,登陆管理控制台,在Admin Console > Server > Server Settings > Server Certificates处删除所有属于旧域名的证书。如果一个证书都没有,那就需要手动产生一个新证书。
6、修改Openfire的IM端口
默认是5222端口,要修改默认的端口,同样修改上面的数据表,找到xmpp.socket.plain.port行,如果没有这一行,那就插入这一行,值改为15222即可。相关文章推荐
- 国外android 网站
- 如何在windows7操作系统下搭建用于开发网站的web服务器环境
- 网站性能、架构、优化总结
- poj2115-C Looooops(扩展欧几里德算法)
- GOROOT与GOPATH
- Linux知识(1)----U盘安装Ubantu14.04系统
- linux常用命令(44):netstat 命令
- Hadoop与Spark等数据处理系统哪个是最好的?
- 关于tomcat startup.bat启动后一闪而过的问题(转)
- linux下shell编程基础
- hadoop 2.6 完全分布式安装过程及记录 (详细版)
- App工程结构搭建:几种常见Android代码架构分析
- shell 冒泡排序 数组的使用
- Linux Shell脚本实现根据进程名杀死进程
- linux下svn常用命令
- Tomcat源码学习
- /bin/bash^M: bad interpreter: 没有那个文件或目录
- LINUX常用命令大全
- SSH登录Linux服务器慢或者登陆错误的解决方法分享
- linux中cat more less 命令区别