当遇到 OnlyOffice 文档下载失败的问题时,可以从以下几个方面进行排查和解决:

1. 检查 JWT 配置

如果启用了 JSON Web Token (JWT),可能会导致权限验证问题从而引发下载失败。可以通过禁用 JWT 来解决问题。具体操作如下:

  • 启动容器时添加 -e JWT_ENABLED=false 参数[^1]。
docker run -i -t -d --restart=always -p 7010:80 --privileged=true -e JWT_ENABLED=false onlyoffice/documentserver

此外,还可以手动修改 local.json 文件中的 JWT 设置[^3]。

{
    "token": {
        "enable": {
            "request": {
                "inbox": false,
                "outbox": false
            },
            "browser": false
        }
    }
}

2. 确认后端服务地址

确保 OnlyOffice 容器内的应用能够正常访问后端服务。如果后端服务不可达,则可能导致图片或文档无法下载。建议通过以下方法测试连接性:

  • 使用 ping 或 curl 命令检测目标 IP 地址是否可达。
  • 如果使用的是私有网络环境,请确保容器能通过私有 IP 访问后端服务[^2]。

3. 调整防火墙规则

防火墙可能拦截了必要的请求,进而影响文件下载功能。可以采取以下措施:

  • 检查服务器上的防火墙设置,允许相关端口(如 HTTP 的 80 和 HTTPS 的 443)流量通行。
  • 如需快速定位问题,可暂时关闭防火墙以排除干扰[^2]。

4. 配置 Docker DNS

DNS 解析错误也可能引起下载失败。例如,在某些情况下,容器内部无法解析外部域名。此时可通过指定自定义 DNS 服务器来修复此问题[^4]。

docker run -dit --name office -p 90:80 --dns=192.168.10.10 --restart=always onlyoffice/documentserver

注:将 --dns=192.168.10.10 替换为您实际可用的 DNS 服务器地址。

另外,也可以全局更改 Docker 的默认 DNS 配置。编辑 /etc/docker/daemon.json 文件并加入以下内容:

{
    "dns": ["8.8.8.8", "8.8.4.4"]
}

保存后记得重启 Docker 服务使改动生效。


总结

综合以上分析可知,OnlyOffice 下载失败的原因通常涉及 JWT 验证、网络连通性和 DNS 配置等方面。按照上述步骤逐一排查应能找到根本原因并加以修正。

 

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。