OnlyOffice “Error while downloading the document file to be converted” 问题解决

今天使用 NextCloud 在线编辑的时候,发现文档无法在线打开,在更新 OnlyOffice 配置时,出现 "cURL error 35: error:1408F10B:SSL routines:ssl3_get_record:wrong version number" 的报错,如下图:

报错信息

经过排查,发现是由于 JWT(Json Web Token) 不匹配引起的,官方解释有限,如下图:

官方回复

官方解决办法

不过官方的解决办法,并不能很好地解决我所遇到的问题,经过研究,发现 default.json 还是需要改的。完整的解决办法如下:

  1. 修改 OnlyOffice 中的 /etc/onlyoffice/documentserver/default.json 文件,将 rejectUnauthorized 参数改为 false:

    "rejectUnauthorized": false
  2. 修改 OnlyOffice 中的 /etc/onlyoffice/documentserver/local.json 文件,将所有值为 Authorization 改成 AuthorizationJwt:

    "inbox": {
        "header": "AuthorizationJwt"
    },
    "outbox": {
        "header": "AuthorizationJwt"
    }
  3. 重启 OnlyOffice 服务:

    supervisorctl restart all;
  4. 更改 NextCloud 的 html/config/config.php 文件,在 $CONFIG 里面添加以下参数:

    'onlyoffice' =>
    array (
        "verify_peer_off" => "true",
        "jwt_header" => "AuthorizationJwt",
    ),
    'allow_local_remote_servers' => true,
  5. 无需重启 NextCloud 返回配置页面重新点击保存即可。