如何将OnlyOffice与ownCloud集成

本教程将向您展示 如何将OnlyOffice与ownCloud集成。 如您所知,OnlyOffice是一个开源的在线办公套件。 OnlyOffice团队最近发布了一个 ownCloud OnlyOffice集成应用 它允许ownCloud用户使用OnlyOffice在线编辑器在文档上进行编辑和协作。

集成应用程序的功能:

  • 在线提供的功能齐全的文本编辑器,具有桌面编辑器的所有功能。
  • 100%的视图,转换,打印和分页保真度。
  • 添加链接,表格和图表,插入图像,自动形状,公式和文本对象并进行操作,创建项目符号或编号列表等等。
  • 与您的队友进行实时协作编辑:立即显示更改或仅保存后显示更改。 使用评论和内置聊天,查看和跟踪更改。
  • 支持大多数流行格式:编辑DOCX,XLSX,PPTX,TXT文件并保存在ODT,ODS,ODP,DOC,XLS,PPT,PPS,EPUB,RTF,HTML,HTM中。

要集成这两个软件,您需要执行以下操作:

  • 安装 OnlyOffice文件伺服器 在HTTPS中运行
  • 在您自己的cloud服务器上安装ownCloud OnlyOffice集成应用程序。

OnlyOffice文档服务器和ownCloud服务器可以安装在两台不同的计算机上。 让我们开始吧。

步骤1:安装ONLYOFFICE文档服务器

请注意,OnlyOffice文档服务器至少需要2GB的RAM。 建议额外使用2GB的交换空间。 OnlyOffice文档服务器取决于PostgreSQL,Node.js,Redis服务器,RabbitMQ服务器和Nginx。 以下步骤已在Ubuntu 16.04服务器上进行了测试,但也应适用于其他基于Debian的Linux发行版。

从Ubuntu存储库安装PostgreSQL

sudo apt install postgresql

然后创建 onlyoffice 数据库。

sudo -u postgres psql -c "CREATE DATABASE onlyoffice;"

创建 onlyoffice 用户。

sudo -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"

授予权限。

sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"

从官方存储库安装NodeJS

OnlyOffice文档服务器需要nodejs 6.9.1+,但是Ubuntu存储库中的版本已过时,因此我们需要从上游存储库安装Node.js的最新LTS版本(6.9.5)。

添加Node.js存储库。

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

安装Node.js。

sudo apt install nodejs

检查Node.js版本。

node -v

样本输出:

v6.9.5

安装Redis服务器和Rabbitmq

sudo apt install redis-server rabbitmq-server

检查其状态。

systemctl status redis-server

systemctl status rabbitmq-server

你应该看到他们是 活动(运行)。 如果 rabbitmq-server 无法启动,主要是由于计算机内存不足。

安装OnlyOffice文档服务器

使用以下命令添加OnlyOffice存储库。

echo "deb http://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list

导入OnlyOffice公钥。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5

更新本地程序包索引并安装OnlyOffice文档服务器。 请注意,Nginx将作为Web服务器安装,因此如果Apache正在运行,则可能需要停止它。

sudo apt update

sudo apt install onlyoffice-documentserver

在安装过程中,系统将要求您输入onlyoffice的PostgreSQL密码。 输入“ onlyoffice”(不带双引号)。

安装完成后,在Web浏览器中输入服务器的公共IP地址,您应该看到“文档服务器正在运行”

Onlyoffice文件伺服器

启用HTTPS

要将ownCloud连接到OnlyOffice文档服务器,后者必须以HTTPS模式运行。 以下步骤显示了如何获取和安装“让我们加密TLS”证书。

编辑 /etc/nginx/conf.d/onlyoffice-documentserver.conf 文件。

sudo nano /etc/nginx/conf.d/onlyoffice-documentserver.conf

如下更改配置。 别忘了为 onlyoffice.your-domain.com

include /etc/nginx/includes/onlyoffice-http.conf;
server {
  listen 0.0.0.0:80;
  listen [::]:80 default_server;
  server_name onlyoffice.your-domain.com;
  server_tokens off;

  include /etc/nginx/includes/onlyoffice-documentserver-*.conf;

  location ~ /.well-known/acme-challenge {
        root /var/www/onlyoffice/;
        allow all;
  }
}

保存并关闭文件。 重新加载Nginx

sudo systemctl reload nginx

然后安装certbot(让我们加密)客户端。

sudo apt install letsencrypt

接下来,运行以下命令以使用webroot插件获取免费的TLS证书。

sudo letsencrypt certonly --webroot --agree-tos --email your-email-address -d onlyoffice.your-domain.com -w /var/www/onlyoffice/

在几秒钟内,您将看到类似以下的消息,这表示已成功获得TLS证书。

onlyoffice https

编辑 onlyoffice-documentserver.conf 文件。

sudo nano /etc/nginx/conf.d/onlyoffice-documentserver.conf

删除该文件中的所有内容,然后将以下文本粘贴到该文件中。

include /etc/nginx/includes/onlyoffice-http.conf;
## Normal HTTP host
server {
  listen 0.0.0.0:80;
  listen [::]:80 default_server;
  server_name onlyoffice.your-domain.com;
  server_tokens off;
  ## Redirects all traffic to the HTTPS host
  root /nowhere; ## root doesn't have to be a valid path since we are redirecting
  rewrite ^ https://$host$request_uri? permanent;
}
#HTTP host for internal services
server {
  listen 127.0.0.1:80;
  listen [::1]:80;
  server_name localhost;
  server_tokens off;
  include /etc/nginx/includes/onlyoffice-documentserver-common.conf;
  include /etc/nginx/includes/onlyoffice-documentserver-docservice.conf;
}
## HTTPS host
server {
  listen 0.0.0.0:443 ssl;
  listen [::]:443 ssl default_server;
  server_name onlyoffice.your-domain.com;
  server_tokens off;
  root /usr/share/nginx/html;
  
  ssl on;
  ssl_certificate /etc/letsencrypt/live/onlyoffice.your-domain.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/onlyoffice.your-domain.com/privkey.pem;
 
  ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA128:DHE-RSA-AES128-GCM-SHA384:DHE-RSA-AES128-GCM-SHA128:ECDHE-RSA-AES128-SHA384:ECDHE-RSA-AES128-SHA128:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA128:DHE-RSA-AES128-SHA128:DHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA384:AES128-GCM-SHA128:AES128-SHA128:AES128-SHA128:AES128-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
  ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
  ssl_session_cache  builtin:1000  shared:SSL:10m;
  ssl_prefer_server_ciphers   on;
  add_header Strict-Transport-Security max-age=31536000;
  # add_header X-Frame-Options SAMEORIGIN;
  add_header X-Content-Type-Options nosniff;
  ## [Optional] If your certficate has OCSP, enable OCSP stapling to reduce the overhead and latency of running SSL.
  ## Replace with your ssl_trusted_certificate. For more info see:
  ## - https://medium.com/devops-programming/4445f4862461
  ## - https://www.ruby-forum.com/topic/4419319
  ## - https://www.digitalocean.com/community/tutorials/how-to-configure-ocsp-stapling-on-apache-and-nginx
  # ssl_stapling on;
  # ssl_stapling_verify on;
  # ssl_trusted_certificate /etc/nginx/ssl/stapling.trusted.crt;
  # resolver 208.67.222.222 208.67.222.220 valid=300s; # Can change to your DNS resolver if desired
  # resolver_timeout 10s;
  ## [Optional] Generate a stronger DHE parameter:
  ##   cd /etc/ssl/certs
  ##   sudo openssl dhparam -out dhparam.pem 4096
  ##
  #ssl_dhparam {{SSL_DHPARAM_PATH}};

  location ~ /.well-known/acme-challenge {
     root /var/www/onlyoffice/;
     allow all;
  }
  include /etc/nginx/includes/onlyoffice-documentserver-*.conf;
}

保存并关闭文件。 然后测试Nginx配置并重新加载。

sudo nginx -t

sudo systemctl reload nginx

访问 https://onlyoffice.your-domain.com 在Web浏览器中,以验证OnlyOffice文档服务器是否在HTTPS模式下正确运行。

步骤2:安装ownCloud OnlyOffice集成应用

SSH进入您的ownCloud服务器,然后将目录更改为ownCloud apps目录。

cd /var/www/owncloud/apps/

接下来,使用以下命令下载ownCloud ONLYOFFICE集成应用程序。

sudo git clone https://github.com/ONLYOFFICE/onlyoffice-owncloud.git onlyoffice

然后转到ownCloud Apps页面,单击 Not Enabled 标签并启用OnlyOffice应用。

owncloud onlyoffice集成应用

之后,转到ownCloud管理页面,在左窗格中选择ONLYOFFICE选项卡,然后在Document Editing Service Address字段中输入您的域名。

onlyoffice owncloud

保存以上设置后,您应该能够在ownCloud中创建文档,表单和演示文稿文件。

ownCloud onlyoffice集成

将打开一个单独的选项卡进行编辑。

仅限owncloud办公室在线编辑

而已!

我希望本教程可以帮助您将OnlyOffice与ownCloud集成。 与往常一样,如果您发现此帖子有用,请订阅我们的免费新闻通讯。 您也可以在Google +,Twitter或喜欢我们的Facebook页面上关注我们。

Sidebar