问题一:OnlyOffice DocumentServer 设置 https 问题
根据 Dockerhub 上的 documentserver 使用描述,可使用自签名证书,但在 nextcloud 中使用时无法使用,解决方案有以下两种:
-
更改 nextcloud 的config.php 文件,添加``` ‘onlyoffice’ => array ( ‘verify_peer_off’ =>TRUE, ),
该设置不会检测证书是否和有效,因此可在onlyoffice插件中填入
https://ip:port/
保存后可进行在线编辑,但是即使 nexcloud 设置了 SSL,在使用 onlyoffice 在线编辑后浏览器仍然会显示 SSL 不安全。 > 参考链接:[Nextcloud ONLYOFFICE integration app](https://api.onlyoffice.com/editors/nextcloud "https://api.onlyoffice.com/editors/nextcloud")
-
从 OnlyOffice DocumentServer 容器解决,将 NextCloud 的证书用于 documentserver 容器,需要注意的是,docker run 运行指定证书路径时,使用的是容器内部的路径
docker run -itd -p 9003:443 \ -v /etc/letsencrypt/archive/nextcloud.example.com:/var/www/onlyoffice/Data \ -e SSL_CERTIFICATE_PATH=/var/www/onlyoffice/Data/cert1.pem \ -e SSL_KEY_PATH=/var/www/onlyoffice/Data/privkey1.pem onlyoffice/documentserver
问题二:OSS 挂载问题
如何挂载?
参考阿里云官方文档:快速安装和配置 ossfs
挂载注意事项:
-
目录结构问题:
- 使用外部存储挂载
- 挂载到 nextcloud 目录,如果 oss 原本就有数据,则需要将数据目录放到 nextcloud 用户目录下去,然后在服务器 nextcloud 根目录下执行
sudo -u apache php occ files:scan --all
命令才能在前端正确显示。
sudo -u apache php occ files:scan –all 也可以只指定单个用户,如:sudo -u apache php occ files:scan –admin
-
执行
sudo -u apache php occ files:scan
出错:Exception during scan: File entry could not be inserted but could also not be selected with getId() in order to perform an update. Please try again.
出错时,先执行:
sudo -u apache php -f ./cron.php
问题三:新建用户在OSS里没有用户目录问题
NextCloud 中新建用户会在首次登陆时自动生成用户目录。