最近闲来无事,于是就想搞一个完全属于自己的聊天app,然后拿来和老婆一块使用,想要加什么功能就加什么功能,想想也是很有意思,于是下面就是本猿在搭建服务器时历经的九九八十一难(新版本几乎木有参考文档,泪奔~~~)。
工欲善其事必先利其器,古人说的话总是很有道理,于是乎首先安装win7虚拟机,不错,由于我使用的是mac所以得先安装虚拟机,虽然mac也可以搭建openfire服务器,但据说很不稳定(相对于windows来说),使用mac的小伙伴可以安装Parallels Desktop(mac平台上的神器,强烈推荐,需要的小伙伴可以私我,由于版权问题就不发了), 附上win7原版镜像http://pan.baidu.com/s/1bHOOii,搞定后就开始搭建工作啦!
首先在本地搭建好MySQL环境,使用的是最新的MySQL版本,附上地址http://pan.baidu.com/s/1slLEo3r(我只下载了64位的版本,32位的请到官方下载http://dev.mysql.com/downloads/mysql/,话说官方下载的速度犹如蜗牛),直接解压就可以用,然后在环境变量PATH中追加上MySQL的bin文件路径,比如C:\Program Files\MySQL\bin,配置完变量后更改my-default.ini的名称为my.ini,切记,这个文件本身就是.ini格式的,所以我们只需改名为my即可,不要追加.ini,打开后把mysqld下的三个配置注释去掉并添加自己的mysql路径和data路径(最新的5.7.17没有data文件夹,自己新建一个即可):
basedir = C:\Program Files\MySQL\mysql
datadir = C:\Program Files\MySQL\mysql\data
port = 3306
使用管理员权限打开cmd切换到MySQL安装目录,然后输入命令
mysqld install mysql --defaults-file="c:\mysql\my.ini"
木有出错的情况下就已经成功安装了MySQL服务了,再执行以下命令:
net start mysql
成功界面
Paste_Image.png试试登录MySQL
mysql -u root -p
Paste_Image.png
接下来我们修改一下密码:
SET PASSWORD FOR 'root'@'localhost'=PASSWORD('新密码')
Paste_Image.png
更改密码大功告成!
创建我们的openfire数据库用来存放注册用户的所有属性:
create database openfire;
查看一下是否存在刚刚创建的数据库:
show databases;
Paste_Image.png
到这里数据库中还没有任何表,这是因为我们还没搭建好openfire服务器并使用MySQL数据库,我们开始搭建服务器:
首先下载openfire客户端http://pan.baidu.com/s/1mhPBZ4W,一路安装,打开后的界面
Paste_Image.png这是我已经启动了服务器后的界面,安装后点击start会跳转到浏览器界面
Paste_Image.png域名这块我们可以任意填写,但是要把本机静态IP地址和域名做个映射,比如
192.168.10.11 alibaba.com.cn
还要把localhost和域名做个映射
127.0.0.1 alibaba.com.cn
当然这个IP地址可以是局域网也可以是外网的,然后点击继续
Paste_Image.png我们直接使用标准数据库连接,这样可以使用我们本地搭建的MySQL数据库了,在数据库url中把hostname换成localhost(如果是局域网),把databaseName换成刚刚创建的数据库名字,用户名填写admin,密码随意,点继续就大功告成啦
Paste_Image.png使用刚刚填写的用户名和密码登录,记得是admin用户,其他用户的话还要更改权限
Paste_Image.png到这里还没结束,下载spark客户端测试下看看能否登录成功,首先随便注册新用户
Paste_Image.png注意用户名要用英文,使用中文会显示为??
下载spark客户端http://pan.baidu.com/s/1hsKAFHy, 以上地址全是最新版本,安装成功后使用刚刚添加的新用户登录会出现这个界面:
登录不了啊什么鬼,我们打开spark安装目录下的logs
Paste_Image.png打开error
Paste_Image.png Paste_Image.png不要惊慌,出现这个问题的原因是因为客户端连接设置问题,我们切换到服务器设置界面
Paste_Image.png把加密连接给禁用掉,然后保存设置,然后关闭服务器重新登录
Paste_Image.png这时再登录试试看!
Paste_Image.png Paste_Image.png总结,网上已经有很多关于如何搭建openfire服务器的文章了,有人会问了为什么你还要重复造轮子呢?这时因为之前的文章都是旧版本的openfire服务器,到了4.1.0版本后服务器设置会有所不同,碰到了一些问题在网上找不到解决文档,所以本文由此诞生,接下来要做的事就是去研究smack 4.1版本的SDK了,和之前的用法也发生了很大的差别,不久的以后我也会把自己碰到的一些问题及解决思路写出来,以此供需要的小伙伴参考,如果本文有一些未提到的细节问题而小伙伴碰到了,请提出来咱们共同探讨学习,谢谢小伙伴们的观赏,咱们下次见!!!
网友评论