跳至主要内容

修复Nextcloud的安全报错


终于要写这个了啊





首先声明一下,由于我用的DNS是Cloudflare,因为Cloudflare自带CDN缓存,导致我一旦修改相关目录,解析缓存就要等很久,所以本篇直接写文字,并且由于我记性不太好,若有些BUG并没有写解决方法,请在评论区评论,感谢!









Nginx部分





Q:您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或者你可以将数据目录移动到 Web 服务器文档根目录。





A:更改网站伪静态即可(代码如下)





location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
deny all;
}




Q:您的网页服务器未正确设置以解析“/.well-known/caldav”。更多信息请参见文档。
您的网页服务器未正确设置以解析“/.well-known/carddav”。更多信息请参见文档





A:配置你网站的Nginx文件,添加以下两句(请注意Nginx语法)





rewrite /.well-known/carddav /remote.php/dav permanent;
rewrite /.well-known/caldav /remote.php/dav permanent




然后重启Nginx,Nginx部分完成!





PHP部分





我们去下载一下PHP拓展:fileinfo,apcu,imagick和opcache,然后开始修复PHP报错





Q:未找到 PHP 的 "fileinfo" 模块。强烈推荐启用该模块,从而获得更好的 MIME 类型探测结果/该实例缺失了一些推荐的PHP模块。为提高性能和兼容性,我们强烈建议安装它们。





A:下载fileifo和imagick扩展即可





Q:PHP的安装似乎不正确,无法访问系统环境变量。getenv("PATH")函数测试返回了一个空值。 请参照安装说明文档 ↗中的PHP配置说明查阅您服务器的PHP配置信息,特别是在使用php-fpm时。





A:使用vim进入pho-fpm添加一句代码





vim /www/server/php/72/etc/php-fpm.conf

将此句添加到末尾
env[PATH] = /usr/local/bin:/usr/bin:/bin:/usr/local/php/bin





然后保存即可





Q:内存缓存未配置,为了提升使用体验,请尽量配置内存缓存。更多信息请参见文档





A:使用vim进入网站config文件配置acpu为内存缓存器(?)





vim /www/wwwroot/你的域名/nextcloud/config/config.php

将此句添加到末尾
'memcache.local' => '\\OC\\Memcache\\APCu',




然后保存即可(注意语法,不然很容易报错)





Q:PHP 的 OPcache 模块未载入。推荐开启获得更好的性能。





A:更改PHP文件中Opcache的参数(推荐使用宝塔面板改)





更改为
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1




然后重启PHP,PHP部分完成





还有一个数据对接问题,只需在nextcloud目录输入这句代码即可





sudo -u www php occ db:add-missing-indices




代码来源:伊阳博客




评论

此博客中的热门博文