Nextcloud上的一些常见报错及解决方案
Nextcloud是一套用于创建网络硬盘的客户端-服务器软件。其功能与Dropbox相近,但Nextcloud是自由及开放源代码软件,每个人都可以在私人服务器上安装并运行它。
优势与不足
优势:高速(直链下载速度起飞,与服务器带宽有关);私密(自己全权管理所有文件);稳定(不存在服务商关闭网盘服务的问题);实现了PC、iPhone、iPad三端自动同步;可以直接编辑云端的文件(代码文件也直接查看编辑)不足:私有云盘需要自己维护(出现各种问题就很糟心);服务器的硬盘容量通常不大(多为几十G,不适合做仓库盘)
小伙伴搭建完,进入设置会提示各种警告,强迫症的我们怎么能忍受,下面提升体验和安全性,我们一 一来解决。基于本次搭建基于宝塔环境
1.1 PHP configuration option output_buffering must be disabled
因为PHP默认是4096字节缓冲,但是NextCloud希望你关闭缓冲。
在宝塔面板打开软件商店
-已安装
-PHP-7.3
-设置
-配置文件
,查找文本output_buffering = 4096
,在前面加上;
注释掉即可。
重载PHP配置或者重启PHP服务才能生效。
1.2 您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或者您可以将数据目录移动到 Web 服务器文档根目录
打开网站的配置文件
,在”#禁止访问的文件或目录”内添加data即可。
1 | location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md|data) |
1.3 PHP 的安装似乎不正确,无法访问系统环境变量。getenv(“PATH”) 函数测试返回了一个空值
在宝塔面板,依次打开:软件商店
-已安装
-PHP7.3设置
-FPM配置文件
在文末添加:
1 | env[PATH] = /usr/local/bin:/usr/bin:/bin:/usr/local/php/bin |
重载PHP配置或者重启PHP服务才能生效。
1.4 您的网页服务器未正确设置以解析****。
打开网站
> 你的域名
>伪静态
,添加以下语句:
1 | location = /.well-known/webfinger { |
1.5 PHP模块问题
- 未找到 PHP 的 “fileinfo” 模块。强烈推荐启用该模块,从而获得更好的 MIME 类型探测结果。
- 未加载 PHP OPcache 模块。[为了更佳性能,建议将其加载到你的 PHP 安装。
- 该实例缺失了一些推荐的 PHP 模块。为提高性能和兼容性,我们强烈建议安装它们。
gmp
imagick
安装如下模块:
1.6 PHP内存限制低于建议值512MB
这个也是直接进入php的配置修改,修改memory_limit
这一项的值大于512M即可。
1.7 通过 HTTP 不安全访问站点。强烈建议你将服务器设置为要求 HTTPS
这个问题是因为我没有绑定域名,如果有域名就可以给服务器绑定域名,配置SSL证书,域名解析到服务器就可以了。
1.8 内存缓存未配置。为了提升性能,请尽量配置内存缓存。
这个问题是指php的缓存模块没有安装,NextCloud支持APCu、Memcached、Redis等模块,选择安装Memcached、Redis。
修改nextcloud的配置文件config.php,在array
和datadiretory
之间添加以下语句:
1 | 'memcache.local' => '\OC\Memcache\Redis', |
写在最后
以上就是NextCloud大致的部署和优化过程,其他NextCloud功能由大家自行摸索。
1 | 由于能力有限,若有错误或者不当之处,还请批评指正。 |