Nextcloud

OpenFire配置XMPP服务实现Nextcloud在线聊天

Nextcloud/ownCloud JSXC插件

JSXC是一款用JavaScript编写的开源XMPP客户端,免去了桌面客户端的下载安装的繁琐,并且能与Nextcloud/ownCloud、SOGo有机地结合起来,提高效率。

 

安装XMPP Openfire服务

OpenFire需要Java环境的支持。安装JRE:

sudo apt-get install default-jre-headless

下载Openfire安装包并安装

http://www.igniterealtime.org/downloads/index.jsp下载Openfire

下载到服务器里之后就可以直接用dpkg安装了。

dpkg -i openfire_4.1.5_all.deb

创建数据库

Openfire需要数据库来支持,我们就地取材直接使用MySQL即可。

#登录MySQL
mysql -u root -p

#创建数据库和用户
mysql> CREATE DATABASE dbopenfire CHARACTER SET='utf8';   #创建数据库
mysql> CREATE USER 'openfire'@'localhost' IDENTIFIED BY 'openfirepwd';  #创建用户,用户名为openfire,密码为openfirewd
mysql> GRANT ALL PRIVILEGES ON dbopenfire.* TO openfire@localhost WITH GRANT OPTION; #授予权限
mysql> FLUSH PRIVILEGES;
mysql> quit

当然你也可以用phpMyAdmin之类的来创建,这个不再赘述。

Openfire的初始配置

现在,访问http://你的服务器地址:9090/ 登录到Openfire的管理页面。

1.先选择语言,openfire是支持中文的。然后点击"Continue"进入下一步。

无需修改,点击“继续”

2.配置数据库。选择“标准数据库连接”将数据库URL一栏中的[host-name]和[database-name]分别修改为localhost和openfire,也就是MySQL服务的地址和数据库openfire。然后在用户名、密码中分别填入之前设置的MySQL用户的用户名和密码。如下图。

3.配置文件设置。保持默认即可,继续。

4.设置管理员账户。

5.完成管理员账户的设置后,用管理员账户登录Openfire后台,启用Script Syntax。

好了,Openfire的配置就差不多了,当然只有一个管理员用户是无法愉快地聊天的,你可以到“用户/用户群”添加用户和群组。

创建用户群后,别忘了把用户添加到同一群组,否则是看不到对方的。

配置Apache反向代理

先激活反向代理模块

sudo a2enmod proxy proxy_http

在虚拟主机的配置文件

<VirtualHost>...</VirtualHost>

 之间加入以下内容

ProxyPass /http-bind/ http://localhost:7070/http-bind/
ProxypassReverse /httpd-bind/ http://localhost:7070/http-bind/

重启Apache

service apache2 restart

配置Nextcloud

首先到应用页面激活JavaScript XMPP Chat插件

然后进入到管理->JavaScript Xmpp Client,选择“External”,然后按下图输入配置信息。

拉到最下面,点击“Save settings”保存设置。

Enjoy it!

点击顶栏的消息气泡图标,然后在弹出的右侧边栏点击“relogin”登录。

用openfire的管理员账户或者其它账号登录:

稍等之后,就可以看到群组内的用户了。

测试

因为服务器在海外,所以交流的话会有一定延迟。

搭配Collabora Online使用,效果更佳~

 

(5)

本文由 橙叶博客 作者:FrankGreg 发表,转载请注明来源!

热评文章

评论:

3 条评论,访客:3 条,博主:0 条
  1. avatar
    生活在没有墙的世界发布于: 

    而我使用的是 Nginx 1.14
    加入反向代码就报错
    不加代码后
    BOSH server NOT reachable or misconfigured.

    Cross domain request was not possible. Either your BOSH server does not send any Access-Control-Allow-Origin header or the content-security-policy (CSP) blocks your request. Starting from Owncloud 9.0 your CSP will be updated in any app which uses the appframework (e.g. files) after you save these settings and reload.The savest way is still to use Apache ProxyRequest or Nginx proxy_pass. 也是报错
    求指教

  2. avatar
    小鱼发布于: 

    这两边的账户可以同步吗,这样可是要累死人的

    • FrankGreg发布于: 

      可以使用LDAP,这两个都支持LDAP的

发表评论