前段时间提到过Nextcloud的安装方法,Nextcloud是一款比较open的产品,有很多丰富的插件,此次结合另外一款优秀的协作软件onlyoffice实现在线协作文档编辑,其实nextcloud也可以结合其他的插件实现,例如office online也可以实现,各有各的优势,根据自身的环境选择最适合的产品比较重要,另外Nextcloud如果需要大规模使用还是有很多需要优化的地方,否则出现卡顿,响应慢等等,直接进入正题。
正文
ONLYOFFICE DOC对服务器的基本需求
Nextcloud环境
- 网页服务:Apache
- Linux版本:RockyLinux 8.4
- PHP版本:7.4
- 数据库版本:Mariadb 10.3.28
ONLYOFFICE环境
- 网页服务:Nginx 1.20
- Linux版本:CentOS 7.6
- RabbitMQ:3.3.5
- 数据库:Postgresql 12
安装Nginx
yum -y install epel-release
yum -y install nginx
安装Postgresql-12
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install -y postgresql12-server
初始化数据库
/usr/pgsql-12/bin/postgresql-12-setup initdb
systemctl enable postgresql-12 && systemctl start postgresql-12
修改数据库认证配置文件
修改完成后需要重新刷新配置
vi?/var/lib/pgsql/12/data/pg_hba.conf
systemctl reload postgresql-12
创建数据库
进入其他目录,否则会报权限错误
cd /tmp
sudo -u postgres psql -c "CREATE DATABASE onlyoffice;"
sudo -u postgres psql -c "CREATE USER onlyoffice WITH password 'xiaoyu123';"
sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"
安装RabbitMQ
yum -y install rabbitmq-server
systemctl enable rabbitmq-server && systemctl start rabbitmq-server
安装微软字体
yum -y install cabextract
yum -y xorg-x11-font-utils?
yum -y fontconfig
rpm -i https://deac-ams.dl.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
安装onlyoffice doc源
yum -y install?https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm
安装onlyoffice doc
yum -y install onlyoffice-documentserver
systemctl enable supervisord &&systemctl start supervisord
systemctl enable nginx &&systemctl start nginx
修改onlyoffice doc端口号(可选)
export DS_PORT=6100
配置onlyoffice服务
rabbitmq默认用户名密码为guest
bash documentserver-configure.sh
网页访问onlyoffice doc服务
Nextcloud调用Onlyoffice接口
前端操作
此时会出现错误,需要调整nextcloud配置
vi /etc/var/www/html/nextcloud/config/config.php
'allow_local_remote_servers' => true,
再进行测试,就OK了
测试
添加一个文档
测试成功
远程协作测试
Test用户可以看到共享过来的文件
测试正常
写在最后
这个方案有个缺点是,无法在移动端协同,但作为部门级协作还是有用的,另外在实际运用中会出现一些问题,常见是连接失败的问题这些等问题,需要遇到的时候具体问题具体分析了,当然目前官方也提供docker相关的方案,安装起来更加简单,可以避免一些坑,但也会遇到一些坑,大家不妨可以试试。