Nextcloud上的一些常见报错及解决方案

Apr. 1, 2018

注:本文翻译自General troubleshooting ,仅接受翻译上的问题。

如果你在安装、配置、维护Nextcloud时出现问题,可以从下面的渠道寻找解决方案:

官方渠道(英文):

[ssbluelist] [/ssbluelist]

其它:

[ssbluelist] [/ssbluelist]

Bug反馈

如果你认为你找到了一个Nextcloud的Bug,可以:

[ssbluelist]

[/ssbluelist]

如果问题得不到解决,可以使用 bugtracker。你可以用occ config 命令生成一个配置报告,配置中的密码这样的敏感信息会自动隐藏。

常见故障排除

一些故障与服务器环境和浏览器有关,可以参考:System requirements

如果你看到了“代码完整性检查”的报错,可以参考:Nextcloud/OwnCloud管理页面上的警告及对应方案或 Code signing

禁用第三方或未正式发布的应用

这是个在任何程序而不是仅限于Nextcloud上都值得尝试的方法。因为这些第三方的应用/插件或多或少会影响到Nextcloud原有的功能,尤其是未经充分检查测试的不稳定版本。推荐在更新Nextcloud之前禁用所有第三方程序,以免出现新版本与旧的应用冲突。你可以到ownCloud/Nextcloud OCC命令行工具详解(3)查看如何使用命令行工具禁用应用。

Nextcloud的日志文件

在标准Nextcloud安装中,日志级别设置为“正常”。要找到任何问题,您需要将日志级别提升到您的config.php文件中的全部或您的Nextcloud管理页面上的所有内容。有关这些日志级别的更多信息,请参阅Logging configuration

某些日志记录 - 例如JavaScript控制台日志记录 - 需要启用调试。编辑config / config.php并将‘debug’=> false更改为‘debug’=> true,完成后务必将其更改回去。

对于JavaScript问题,您还需要查看JavaScript控制台。所有主流浏览器都有用于查看控制台的开发工具,并且您通常通过按F12访问它们。对于Firefox,我们建议安装Firebug扩展。

[infobox]Nextcloud的日志文件位于数据目录nextcloud/data/nextcloud.log中[/infobox]

PHP版本信息

你需要知道你的PHP版本和配置。为此,请创建一个名为phpinfo.php的纯文本文件,并将其放在Web根目录中,例如/var/www/html/phpinfo.php。 (您的Web根目录可能位于不同的位置;您的Linux发行版文档将告诉您在哪里。)此文件仅包含以下内容:
<?php phpinfo(); ?>
通过将浏览器指向localhost/phpinfo.php在Web浏览器中打开此文件:

您的PHP版本信息位于顶部,页面的其余部分包含丰富的系统信息,例如激活的模块,使用的.ini文件等等。当你检查完你的信息时,必须删除phpinfo.php,或将它移到你的Web目录之外,因为暴露这种敏感数据存在安全风险。

调试同步问题

[warningbox]服务器上的数据目录是Nextcloud独有的,不能手动修改。[/warningbox]

无视这可能会导致不需要的行为,如:

如果您需要直接从同一服务器上传文件,请使用WebDAV命令行客户端(如cadaver)将文件上传到WebDAV界面:

https://example.com/nextcloud/remote.php/dav

常见的问题/错误信息

这些是你可能在日志文件中找到的错误信息:

[ssbluelist]

[/ssbluelist]

解决Web服务器和PHP的问题

日志文件

发生问题时,第一步是检查PHP提供的日志文件,Web服务器和Nextcloud本身。

[infobox]在下文中,假定使用mod_php运行Apache2的默认Debian安装的日志文件路径。在其他Web服务器上,Linux发行版或操作系统可能有所不同。[/infobox]

[ssbluelist]

[/ssbluelist]

Web服务器和PHP模块

[infobox]Nextcloud不支持Lighttpd,所以Nextcloud一些特性无法在Lighttpd上工作[/infobox]

目前已知一些Web服务器或PHP模块会导致各种问题。以下是这些模块的大概列表:

[ssbluelist]

  1. Apache
  1. NginX
  1. PHP
[/ssbluelist]