Nextcloud 问题记录

安装好了,后台提示好多问题。记录一下。

1.PHP似乎没有设置好查询的系统环境变量。用getenv(\"PATH\")测试只返回一个空值

编辑php-fpm.conf配置文件

    env[HOSTNAME] = $HOSTNAME
    env[PATH] = /usr/local/bin:/usr/bin:/bin
    env[TMP] = /tmp
    env[TMPDIR] = /tmp
    env[TEMP] = /tmp

来源

2. nextcloud 无法启动自动更新,请尝试手动更新

设置页面的更新器打不开,查看控制台发现updater返回了403错误。官网的教程看了半天看不懂。尝试以下步骤发现可以成功升级:

  1. 访问https://你的网址/updater/index.php,此处要求登录,页面下方给出一段代码,在linux执行以下命令即可生成密码。
    php -r '$password = trim(shell_exec("openssl rand -base64 48"));if(strlen($password) === 64) {$hash = password_hash($password, PASSWORD_DEFAULT) . "\n"; echo "Insert as \"updater.secret\": ".$hash; echo "The plaintext value is: ".$password."\n";}else{echo "Could not execute OpenSSL.\n";};'

    嫌麻烦的话,打开控制台,切换到网络,刷新设置页面,清空请求记录,点击“打开更新器”,此时会出现两个请求,其中有1个

https://你的网址/index.php/apps/updatenotification/credentials

点击此请求查看返回值即可。

  • 必须通过此方法,直接访问该网址会提示CSRF check failed
  1. 点击更新即可。

3.Header不正确

HTTP 请求头 "X-XSS-Protection" 没有配置为 "1; mode=block"。这是一个潜在的安全或隐私风险,
我们建议您调整这项设置. HTTP 请求头 "X-Content-Type-Options" 没有配置为
"nosniff"。这是一个潜在的安全或隐私风险, 我们建议您调整这项设置. HTTP 请求头 "X-Robots-Tag" 没有配置为
"none"。这是一个潜在的安全或隐私风险, 我们建议您调整这项设置. HTTP 请求头 "X-Frame-Options" 没有配置为
"SAMEORIGIN"。这是一个潜在的安全或隐私风险, 我们建议您调整这项设置. HTTP 请求头
"X-Download-Options" 没有配置为 "noopen"。这是一个潜在的安全或隐私风险, 我们建议您调整这项设置. HTTP
请求头 "X-Permitted-Cross-Domain-Policies" 没有配置为 "none"。这是一个潜在的安全或隐私风险,
我们建议您调整这项设置.

查看HTTP请求,看看Header是否正确。
我这里发现每个header有3个相同的条目。检查后发现,程序自身发送一个header,nginx服务器发送一个,反代服务器又发送一个。在nginx配置文件里面去掉add_header即可。

4. 待续

还有两个问题,以后再说吧。

  • 内存缓存未配置,为了提升使用体验,请尽量配置内存缓存。更多信息请参见文档。
  • PHP 的组件 OPcache 没有正确配置。 为了提供更好的性能,我们建议在 php.ini中使用下列设置:
    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
    请仔细检查安装指南,并检查日志中是否有错误或警告。
Evan

Evan

给我也整一个!

留下你的评论

快留下你的小秘密吧