owncloud+collabora 实现网盘在线预览
来源:互联网 发布:medline数据库论文 编辑:程序博客网 时间:2024/03/28 18:02
最近使用 owncloud 搭建了一个个人网盘并连接 collaborra 实现了在线预览,编辑功能。
部署的过程很曲折,走了很多弯路,好在最后都圆满解决了,现在回顾一下;
环境搭建
亲测:如果使用owncloud9 及以上版本,推荐使用apache 服务器,因为nginx 对于webdev支持不是很好,博主在这个地方绕了很久。最后选择了owncloud8。
lnmp 一键安装 wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp
安装的时候会选择 php , nginx 和 mysql 版本。
本着喜新厌旧的思想 安装了目前最新版的 php 7.1.12 但是后来发现 owncloud8 不支持 php 7,所以又版本回退到 5.6, 好在lnmp 有升级降级脚本可以一键实现。
php 需要加一些配置
在PHP-fpm 中 添加配置
env[HOSTNAME] = $HOSTNAMEenv[PATH] = /usr/local/bin:/usr/bin:/binenv[TMP] = /tmpenv[TMPDIR] = /tmpenv[TEMP] = /tmp
否则会报错:php does not seem to be setup properly to query system environment variables. The test with getenv(“PATH”) only returns an empty response.
Please check the installation documentation ↗ for php configuration notes and the php configuration of your server, especially when using php-fpm.
php.ini 注释掉 disable_functions 否则 没法切换中文。
php 安装 fileinfo 扩展
wget -O php-7.1.12.tar.gz http://cn2.php.net/get/php-7.1.12.tar.gz/from/this/mirrortar -zxvf php-7.1.12.tar.gzcd php-7.1.12/ext/fileinfo/usr/local/php/bin/phpize./configure -with-php-config=/usr/local/php/bin/php-configmake && make installvim /usr/local/php/etc/php.ini加入:extension=fileinfo.so
安装 docker (安装 collabora 需要用到)
sudo yum install -y yum-utilssudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.reposudo yum makecache fastsudo yum -y install docker-cesudo systemctl start docker
安装配置 owncloud
下载owncloud 文件,解压,然后 配置 nginx。
给owncloud系统目录更改用户和权限
给 data 目录设置权限 770 (不然会提示错误)
然后可以去腾讯云免费申请一个一年的SSL 证书,因为 collabora 默认是 https的,当然通过改配置项可以切换成http,但是当时没有跟owncloud连接成功,接下来有时间会继续测试。 目前推荐 https。
然后配置 mysql 数据库
然后应该就可以正常访问了。
配置完成图。
安装collabora
collabora 是一个支持在线office 预览编辑的系统。直接安装docker 镜像就可以了。
docker run -t -d -p 0.0.0.0:9980:9980 -e 'domain=owncloud\\.domain\\.com\|nextcloud\\.domain\\.com' -e "username=admin" -e "password=123456" --restart always --cap-add MKNOD collabora/code
domain 授权的 域名(WOPI 主机) 也就是你配置的 owncloud 域名。
username 登录collabora 后台账号
password 密码
如果你有兴趣进到docker容器里边,你会发现,它会把这些参数写到 /etc/loolwsd/loolwsd.xml 中,通过修改 loolwsd.xml 可以进行相关配置 (可以关闭默认的 https,启用http连接)。
当时由于 参数错误,配置好之后会出现一个 “未授权的WOPI 主机”的报错,纠结了很长时间,一步一步去找,最后找到配置文件,才处理好。错误,会隐藏在我们最容易忽视的地方。
启动之后,配置 nginx 转发, 同样推荐https 。如果 owncloud 和 collabora 走得协议不一致也会出问题。
附:nginx 配置一份
server { listen 443 ssl; server_name collabora.test.com; ssl on; ssl_certificate /usr/local/nginx/ssl/server.pem; ssl_certificate_key /usr/local/nginx/ssl/server.key; location ^~ /loleaflet { proxy_pass https://localhost:9980; proxy_set_header Host $http_host; } location ^~ /hosting/discovery { proxy_pass https://localhost:9980; proxy_set_header Host $http_host; } location ^~ /lool { proxy_pass https://localhost:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; }}
配置完成后。 访问 https://localhost:9980/loleaflet/dist/admin/admin.html 输入配置项中的账号密码。
会显示collabora的后台数据。
安装 collabora online
从owncloud app 列表里边找到 collabora online 插件。安装。 有可能会出错。
marketplace.owncloud.com 里边找到这个插件,下载,然后传到 owncloud/apps 目录,然后启用。
然后配置 在线协作
配置好之后,列表里的office 文件可以直接线上打开。
完成。
持续更新,下一目标。 oauth 认证解决 授权登录问题。
补充 :owncloud 启用 redis 缓存
1.安装启动redis
1、yum install redis --查看是否有redis yum 源2、yum install epel-release --下载fedora的epel仓库3、 yum install redis -- 安装redis数据库4、service redis start --启动
启动之后 ps axu | grep redis 能看到相关进程
2. 安装 phpredis 扩展
pecl install redis
3. 修改owncloud 配置文件
vi /var/www/owncloud/config/config.php
添加
'memcache.local' => '\\OC\\Memcache\\Redis','filelocking.enabled' => 'true','memcache.distributed' => '\\OC\\Memcache\\Redis','memcache.locking' => '\\OC\\Memcache\\Redis','redis' =>array ('host' => 'localhost','port' => 6379,'timeout' => 0,'dbindex' => 0,),
- owncloud+collabora 实现网盘在线预览
- 在线预览实现
- 企业网盘: Owncloud 搭建
- Java实现在线预览office
- java文档在线预览实现
- 文档在线预览的实现
- Java实现Office在线预览
- JavaScript实现图片在线预览
- JavaWeb实现图片在线预览
- js实现图片在线预览
- 在线预览功能的实现
- Office在线预览及PDF在线预览的实现方式
- Java实现在线预览--openOffice实现
- openoffice+pdf2swf实现在线转换office文档,实现在线预览
- Android实现pdf在线预览或本地预览
- asp.net实现word在线预览功能
- PDF在线预览(java实现)
- flexpaper实现文档的在线预览
- centos7下NAT模式设置静态ip
- Linux C 多人网络聊天室(UDP)
- Android Recyclerview焦点变化问题导致下拉刷新视觉卡顿
- nodejs时间获取
- Policy Gradient
- owncloud+collabora 实现网盘在线预览
- IronCAD Design Collaboration Suite 2017 v19.0 SP1官方版下载
- 关于js总结
- 基础练习 2n皇后问题
- deepmind_lab libxml2-2.9.4.tar.gz下载地址
- 布朗语料库中不同部分的情态动词频率直方图绘制的代码详细解释
- 数据结构之栈stack
- 14 在H5上实现的矩阵键盘驱动
- golang time