实现即时通信有多种方式,下面讲的是Mac下使用XMPP来实现。
搭建XMPP环境
需要几个辅助工具
- XAMPP
- OpenFire
- spark
- 我们首先是搭建服务器环境,要想安装Apache服务器是不容易的,如果你还想添加 MySQL、PHP 和 Perl,那就更难了。XAMPP(Apache+MySQL+PHP+PERL)是很好的辅助工具,TA是一个功能强大的建 XAMPP 软件站集成软件包。这个软件包原来的名字是 LAMPP,它可以在Windows、Linux、Solaris、Mac OS X 等多种操作系统下安装使用,支持多语言。XAMPP 是一个易于安装且包含 MySQL、PHP 和 Perl 的 Apache 发行版。XAMPP 的确非常容易安装和使用:只需下载、解压、启动即可。
- 准备XAMPP的安装包
- 安装(简单的一直NEXT操作)
- 点开Manage Server 点击 start all ,这个意思就是开启所有服务。注意:如果你的MAC自带了一个Apache就会会导致启动失败,就需要打开终端输入 sudo apachectl stop 命令,停止自带的服务器运行。
- OpenFire是开源的基于XMPP协议的服务器,下面是OpenFire的安装和配置指南 登录127.0.0.1:9090
- 使用MySQL数据库(存储聊天记录)
- 这里还要修改数据库URL的两个值[host name] = 127.0.0.1和 [database name]
- 后者需要先使用phpMyAdmin创建一个新的数据库,通过127.0.0.1登录XAMPP页面,点击 phpMyAdmin - New 创建数据库成功之后导入表openfire_mysql.sql
- 此时要去OpenFire文件中获取需要的这个文件,打开Finder前往文件夹(command + shift + g)输入/usr进入usr-local-openfire
- 这个时候你会发现你因为没有权限而无法打开文件,解决办法就是选中文件右键-显示简介-解锁-everyone修改为读与写-上锁
- 此时可以打开openfire-resource-database中找到我们需要的openfire_mysql.sql你可以选择放到桌面方便在phpMyAdmin中导入
- 选中新建的数据库-导入-选择文件-导入成功 [database name] = 新建的数据库名称
- 用户名 = root
- 密码省略
openfire启动失败解决办法
当你发现你的电脑上的openfire无论你是重新安装还是重启都无法启动的情况下你可以按照我下面写的那些终端指令来启动你的openfire不用再去重新做你的系统了.
一般你发现你的openfire打开出现这样的窗口后你就可以想到你的openfire出问题了,极个别的时候你可以通过重新安装来解决.
如果大家的问题重新安装后没有解决那就试下我下面的方法.
先打开自己电脑上的终端然后输入以下指令
// 获取权限
sudo chmod -R 777 /usr/local/openfire/bin
sudo su
sh-3.2# cd /usr/local/openfire/bin
sh-3.2# export JAVA_HOME='/usr/libexec/java_home'
sh-3.2# echo $JAVA_HOME
/usr/libexec/java_home
sh-3.2# export JAVA_HOME=`/usr/libexec/java_home` //记住这里不是单引号而是英文下数字1左边的按键.
sh-3.2# echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
sh-3.2# cd /usr/local/openfire/bin
sh-3.2# ./openfire.sh
Openfire 3.10.2 [Aug 13, 2015 9:50:05 AM]
Admin console listening at http://niufangludemacbook-pro.local:9090
一般你输入完成这些指令后你再打开你的openfire就会好了
简单提一下 :MAC下彻底卸载OpenFire
- 在phpMyAdmin中点击 主页 - 数据库 勾选你创建的数据库直接删除
- 在系统偏好设置中点击进入修改Status 停止运行状态
- 打开终端输入以下三条命令:
sudo rm -rf /Library/PreferencePanes/Openfire.prefPane
sudo rm -rf /usr/local/openfire
sudo rm -rf /Library/LaunchDaemons/org.jivesoftware.openfire.plist
说明:第一条会让你输入管理员密码,尽管你输入的时候,终端不会显示,不必担心,正确输入后按回车,它就执行了.
三条命令以后,openfire就彻底消失了.