# - 常见故障排除方法

# 查看日志

Windows日志

C:\Program Files\ONLYOFFICE\DocumentServer\Log\docservice\out.log
1

Docker日志

docker logs -f 服务容器名称 --tail=100
1

# 令牌无效

从版本 7.2 开始,默认情况下启用 JWT验证,若验证未通过则会弹出如上图所示提示。

处理弹框的方式有两种,一种是关闭jwt校验,一种是正确校验jwt。

# 关闭jwt校验

Windows关闭jwt,修改配置为false,并重启onlyoffice服务即可生效。

C:\Program Files\ONLYOFFICE\DocumentServer\config\local.json
1
 "token": {
                "enable": {
                    "browser": false,
                    "request": {
                        "inbox": false,
                        "outbox": false
                    }
                }
            }
1
2
3
4
5
6
7
8
9

Docker关闭jwt,修改配置为false,进行持久化挂载,重启onlyoffice服务即可生效。

/etc/onlyoffice/documentserver/local.json
1
 "token": {
                "enable": {
                    "browser": false,
                    "request": {
                        "inbox": false,
                        "outbox": false
                    }
                }
            }
1
2
3
4
5
6
7
8
9
# 获取jwt密钥

如果在安装过程中未添加自定义密钥,则会自动生成随机密钥。要获取默认密钥,

Windows部署查看

C:\Program Files\ONLYOFFICE\DocumentServer\config\local.json
1
 "secret": {
        "inbox": {
          "string": "Xn3rpWhIuFibXNCuXLbxwODuYBcSKw"
        },
        "outbox": {
          "string": "Xn3rpWhIuFibXNCuXLbxwODuYBcSKw"
        },
        "session": {
          "string": "Xn3rpWhIuFibXNCuXLbxwODuYBcSKw"
        }
      }
1
2
3
4
5
6
7
8
9
10
11

Docker部署请运行以下命令查看:

 sudo docker exec docker容器ID /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
1
# 校验jwt密钥

根据jwt.io,传递密钥到前端token参数中,通过校验。

java实例代码

public static String CreateToken(Map payloadClaims)
{
   try
   {
       String secret = ConfigManager.GetProperty("files.docservice.secret");
       Signer signer = HMACSigner.newSHA256Signer(secret);
       JWT jwt = new JWT();
       for (String key : payloadClaims.keySet())
       {
           jwt.addClaim(key, payloadClaims.get(key));
       }
       return JWT.getEncoder().encode(jwt, signer);
   }
   catch (Exception e)
   {
       return "";
   }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
上次更新: 2023/12/27