我的Nas折腾记录——nextcloud问题记录

avatar
作者
猴君
阅读量:0

遇到的问题

手机客户端是增量同步 电脑客户端双向同步

什么是增量 双向 看另一篇博客

电脑能网页登录手机app显示配置错误

可能是DNS问题 等一段时间刷新就好了

没有视频略缩图问题

开启插件
或者修改配置
添加配置
在你Nextcloud安装目录下的config/config.php文件中添加以下代码

'enable_previews' => true, 'enabledPreviewProviders' => array ( 0 => 'OC\\Preview\\TXT', 1 => 'OC\\Preview\\MarkDown', 2 => 'OC\\Preview\\OpenDocument', 3 => 'OC\\Preview\\PDF', 4 => 'OC\\Preview\\MSOffice2003', 5 => 'OC\\Preview\\MSOfficeDoc', 6 => 'OC\\Preview\\PDF', 7 => 'OC\\Preview\\Image', 8 => 'OC\\Preview\\Photoshop', 9 => 'OC\\Preview\\TIFF', 10 => 'OC\\Preview\\SVG', 11 => 'OC\\Preview\\Font', 12 => 'OC\\Preview\\MP3', 13 => 'OC\\Preview\\Movie', 14 => 'OC\\Preview\\MKV', 15 => 'OC\\Preview\\MP4', 16 => 'OC\\Preview\\AVI', ), 

然后理论上修改完 刷新网页就生效了 不用重启php和nginx 如果不行可以考虑下

如果还是不行 则需要安装ffmpg

安装ffmpg

首先 docker进入

使用sed工具将字符串dl-cdn.alpinelinux.org替换为mirrors.aliyun.com

sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories 

因为是airpine系统 所以用apk add命令 安装编译工具gcc 和 make

apk add --no-cache g++ //不用nocache也行 apk add --no-cache make 

之后cd到tmp目录

先安装yasm(ffmpg安装需要的依赖)

wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz tar -xvf yasm-1.3.0.tar.gz cd yasm-1.3.0/ ./configure && make && make install 

再cd到tmp目录,然后安装ffmpeg

wget http://www.ffmpeg.org/releases/ffmpeg-4.4.tar.gz tar -xvf ffmpeg-4.4.tar.gz cd /root/ffmpeg-4.4/ ./configure && make && make install 

然后刷新网页就能看到略缩图了

如果还不行 考虑下面方式

一、首先在禁用函数里删除 exec、system 、proc_open、shell_exec(非必须)4个函数
proc_open函数:原因在“管理设置-日志”里查看,提示lib/private/Preview/Movie.php预览视频使用

shell_exec函数(非必须):原因在“管理设置-日志”里查看,提示apps/serverinfo/lib/OperatingSystems/DefaultOs.php查看系统信息所用

二、防跨站目录访问限制open_basedir需要开启例外目录,或者直接关闭
1、宝塔:程序根目录下.user.ini内修改,程序如在子目录则在子目录修改
默认开启open_basedir,网站根目录下将出现一个.user.ini文件,修改或新增如下:

open_basedir=/www/wwwroot/888.com/:/tmp/:/proc/:/usr/local/bin/

代表该网站拥有操作/www/wwwroot/888.com/、/tmp/、/usr/local/bin/、/proc/这4个目录的文件操作权限,此外的目录将不允许操作。

必须/usr/local/bin/,不能用/usr/local/bin/ffmpeg/

必须/proc/,不能用/proc/cpuinfo/

如果程序不在子目录,open_basedir=/www/wwwroot/:/tmp/:/proc/

/proc/cpuinfo/表示后台系统,如不需要可以不添加/proc/

2、APPnodo加例外目录:
方法1:/home/888.com/data/appdata_****/preview/【有时没效果】
方法2:/usr/local/bin【FFmpeg所在目录/usr/local/bin/ffmpeg的上层,可能还需要其他的】
参考https://github.com/nextcloud/previewgenerator/issues/206
http://www.884358.com/open_basedir/

加速预先生成略缩图(非必要)

在Nextcloud应用程序商店中搜索并安装 Preview Generator
生成预览图
第一次生成命令(只运行一次,没异常的情况下不需要再运行,注意修改自己的网站目录)

sudo -u www php /var/www/nextcloud/occ preview:generate-all -vvv
添加Cron

crontab -u www -e
*/10 * * * * php /var/www/nextcloud/occ preview:pre-generate -vvv
或者 我使用的下面这种

#扫描所有图片并生成缩略图

sudo -u www php /www/wwwroot/nextcloud/occ preview:generate-all -vvv
#扫描最新文件并生成缩略图

sudo -u www php /www/wwwroot/nextcloud/occ preview:generate -vvv
#设置定时任务,在指定时间生成缩略图

crontab -e -u www
0 3 * * * php -f /www/wwwroot/nextcloud/occ preview:pre-generate -vvv

卡顿的优化

https://bugxia.com/1706.html
官方文档也有说明

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!