- 论坛徽章:
- 0
|
作者:liheng
Email:liheng_2006 at hotmail.com
Jabber 是著名的即时通讯服务服务器,它是一个自由开源软件,能让用户自己架即时通讯服务器,可以在Internet上应用,也可以在局域网中应用。
XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。XMPP的技术来自于Jabber,其实它是 Jabber的核心协定,所以XMPP有时被误称为Jabber协议。Jabber是一个基于XMPP协议的IM应用,除Jabber之外,XMPP还支持很多应用。
关于 Jabber 的详细内容,大家可以上 Jabber 的官方网页:www.jabber.org 查看。
Opernfire 是一个在开源 GPL 和商业双许可的即时通讯服务器。Openfire 的即时通讯服务采用了广泛采用的开放协议---XMPP。Openfire 非常容易安装与管理,同时 Openfire也提供了非常高的安全性与性能。Openfire 支持WINDOWS、LINUX、MAC平台。目前最新的版本是:Openfire-3.5.2。在本例中我使用的是 Linux 版本。关于 Openfire 的详细内容,大家可以上 Openfire 的官方网页:http://www.igniterealtime.org/projects/openfire/index.jsp 。
Spark 是一款开源的、多平台的即时通讯客户端。它提供了嵌入式聊天室、集成电话、高安全性支持。还为用户提供了非常好的体验功能,如在线拼写校验,聊天室标签、交谈记录等。Spark 支持 Windows、Linux、MAC 平台,目前最新的版本是:Spark-2.5.8。关于 Spark 的详细内容,大家可以上 Spark 的官方网页:http://www.igniterealtime.org/projects/spark/index.jsp 。
安装
下面我就来向大家介绍一下如何配置 Openfire 来构建企业内的即时通讯服务器。首先我还是向大家介绍一下我的环境:
Openfire 服务器OS:RedHat Enterprist Linux 5.0
Openfire 版本:Openfire
MYSQL 版本:mysql-5.1.52a
Spark 版本:Spark-2.5.8
Apache 版本:http-2.2.6
Java 版本:jre1.6
由于Openfire 是使用 Java 开发的,需要Java环境支持,请确保你的系统中已经安装了 JRE。建议使用最新的JRE 版本: jre1.6。可以到 java的官方站点:www.java.com 上下载。
配置JAVA 环境
[root @test ~] # cp jre-6u6-linux-i586.bin /usr/local
[root @test ~] # cd /usr/local
[root @test local] # ls –l | grep jre
-rwxr--r-- 1 root root 19750740 6月 28 11:14 jre-6u6-linux-i586.bin
[root @test local] # ./jre-6u6-linux-i586.bin
此时将显示二进制许可协议。通读许可协议。按空格键显示下一页。读完许可协议后,输入 yes 继续安装。
JRE 安装在其自身的目录中。在本例中,它将安装在 /usr/local/jre1.6.0_6 目录中。当安装完成时,您将看到 Done(完成)字样。
[root @test local] # ln –s /usr/local/jre1.6.0_6/plugins/i386/ns7/libjavaplugin_oji.so /usr/lib/firefox-1.0.4/plugins/
安装mysql。在本例中我要使用 mysql 来作为 Openfire服务器使用的数据库,但这并不是必须的,因为 Openfire 本身内置有数据库,你可以选择使用 Openfire 内置的数据库,也可以使用外置数据数据库。
[root @test local] # tar xzvf /root/mysql-5.0.51a-linux-i686.tar.gz
[root @test local] # ln –s mysql-5.0.51a-linux-i686 mysql
[root @test local] # cd mysql
[root @test mysql] # mv /etc/my.cnf /etc/my.cnf.bak
[root @test mysql] # cp support-files/my-medium.cnf /etc/my.cnf
[root @test mysql] # chown –R mysql .
[root @test mysql] # chgrp –R mysql .
[root @test mysql] # ./scripts/mysql_install_db --user=mysql &
[root @test mysql] #chown –R root .
[root @test mysql] # chown –R mysql data
[root @test mysql] #./bin/mysqld_safe --user=mysql &
[root @test mysql] # netstat –tlunp | grep 3306
[root @test mysql] # cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root @test mysql] # chmod 755 /etc/init.d/mysqld
[root @test mysql] # chkconfig —add mysqld
[root @test mysql] # chkconfig —level 35 mysqld on
[root @test mysql] # mkdir /usr/local/mysql/lib/mysql
[root @test mysql] # mkdir /usr/local/mysql/include/mysql
[root @test mysql] # chown root.mysql /usr/local/mysql/lib/mysql
[root @test mysql] # chwon root.mysql /usr/local/mysql/include/mysql
[root @test mysql] # ln –s /usr/local/mysql/lib/* /usr/local/mysql/lib/mysql
[root @test mysql] ## ln –s /usr/local/mysql/include/* /usr/local/mysql/include/mysql
[root @test mysql] # echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf
[root @test mysql] # ldconfig
安装apache
[root @test mysql] # cd ..
[root @test local] # tar xzvf /root/httpd-2.2.6.tar.gz
[root @test mysql] # cd httpd-2.2.6
[root @test httpd-2.2.6] # ./configure –prefix=/usr/local/apache --enable-so --enable-rewrite
[root @test httpd-2.2.6] # make
[root @test httpd-2.2.6] # make install
[root @test httpd-2.2.6] # echo “/usr/local/apache/bin/apachectl start” >> /etc/rc.local
安装php-5.2.3
[root @test httpd-2.2.6] # cd ..
[root @ test local] # tar -zvxf /root/php-5.2.6.tar.gz
[root @ test local] # mkdir -p /usr/local/php
[root @ test local] # cd php-5.2.6
[root @ test php-5.2.6] # ./configure —prefix=/usr/local/php
—with-apxs2=/usr/local/apache/bin/apxs —with-mysql=/usr/local/mysql
—with-mysqli=/usr/local/mysql/bin/mysql_config —with-xml —with-png
—with-jpeg —with-zlib —with-freetype —with-gd —enable-track-vars —enable-mbstring=all
[root @ test php-5.2.6] # make
[root @ test php-5.2.6] # make install
[root @ test php-5.2.6] # cp php.ini-dist /usr/local/php/lib/php.ini
注:编辑apache配置文件httpd.conf,以apache支持php
[root @ test php-5.2.6] # vi /usr/local/apache/conf/httpd.conf
# 添加如下二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
# 定位至DirectoryIndex index.html
修改为:
DirectoryIndex index.php index.html
# 这里将网站根目录指定到/var/www:
找到DocumentRoot “/usr/local/apache/htdocs”
修改为:DocumentRoot “/var/www”
找到<Directory “/usr/local/apache/htdocs”>
修改为:<Directory “/var/www”>
在 mysql 中建立数据库 openfire
[root @ test php-5.2.6] # /usr/local/mysql/bin/mysql
mysql > CREATE DATABASE openfire;
mysql > exit;
将 Openfire 的数据库资料导入 mysql
[root @ test php-5.2.6] # cat /usr/local/openfire/resource/database/openfire_mysql.sql | /usr/local/mysql/bin/mysql openfire
出于安全考虑,为mysql 用户 root 设置密码
[root @ test php-5.2.6] # /usr/local/mysql/bin/mysqladmin –u root password 123456
[root @ test php-5.2.6] # /usr/local/openfire/bin/openfire start
查看 openfire 控制台端口9090 &9091是否已经打开
[root @ test php-5.2.6] # netstat –tlunp |
|