故障排除. 服务器解决方案
常见问题
问:我想在本地服务器上安装基于 Docker 的服务器。我该如何操作?
答:最新的基于 Docker 的在线办公服务器可以在Docker hub上找到。请选择您要安装的版本:ONLYOFFICE 文档或ONLYOFFICE 邮件,然后按照相应页面上的说明进行操作。
问:创建并进入门户后,我在人员模块中看到一个名为“虚假用户”的未知用户。在服务列表中还有一些OnlyofficeHealthCheck服务。这是为什么?我需要对此做些什么吗?
答:该用户和服务是即将推出的健康检查功能的一部分,该功能将在未来的版本中为门户提供。目前,它尚未启用,因此您可以选择保持原状或禁用OnlyofficeHealthCheck服务,并将其从服务自动启动列表中移除。
问:我需要什么系统来安装服务器解决方案并成功使用它?
答:系统要求如下:
- CPU:双核2 GHz或更高
- RAM:4 GB或更多
- 硬盘:至少20 GB的可用空间
- SWAP:至少4 GB,但取决于主机操作系统。更多更好
- 操作系统:amd64 Linux 发行版,内核版本3.10或更高
- 附加要求:
- Docker:任何由 Docker 团队支持的版本
问:我使用 Docker 服务安装了一个服务器版本,但遇到了一些与 DNS 服务器或自定义名称解析相关的问题。可能是什么原因?
答:Docker 默认指定 Google DNS 服务器,服务器每次进行网络请求时都会尝试联系它们。如果您的ONLYOFFICE 文档或ONLYOFFICE 邮件不打算访问互联网,我们建议您将默认的 Docker DNS 地址更改为本地 DNS 服务器的地址。为此,请进入/etc/default/docker文件,并将以下行中的 IP 地址更改为您本地网络中 DNS 服务器的 IP 地址:
docker_OPTS="--dns 8.8.8.8"对于基于 RPM 的操作系统,如 CentOS,配置文件可以在这里找到:/etc/docker/daemon.json
问:文档编辑器打开并显示界面,但文档本身未加载,一直显示加载进度。该怎么办?
答:原因可能是计算机必须能够通过互联网回环访问自己,即它必须能够从外部访问自己。为此,请编辑iptables以进行如下重定向:
iptables -t nat -A PREROUTING -d <public_ip> -j DNAT --to-destination <local_ip>
iptables -t nat -A POSTROUTING -s <local_ip> -j SNAT --to-source <public_ip>
请记得将public_ip和local_ip地址替换为实际的 IP 地址。
问:我添加了自定义界面主题或更新了编辑器语言文件(修正了一些翻译),但服务器仍显示以前的值而不是正确的值。我如何同时重置所有用户的缓存?
答:请按照以下步骤重置缓存:
找到/etc/nginx/includes/ds-docservice.conf和/etc/nginx/includes/ds-spellchecker.conf文件。文件中应有构建日期和时间值。将这些值更改为其他值(任何值都可以,但主要是它们必须在所有地方相同),然后重启 NGINX:
sudo service nginx reload缓存应为所有服务器用户重置。
HTTPS 问题
问:我添加了自签名 SSL 证书,现在在打开 SSO 元数据页面、使用 WebDAV 和其他 node.js 服务时出现错误。如何解决这个问题?
答:如果在使用自签名 SSL 证书时遇到获取 SSO 元数据、WebDAV 和其他 node.js 服务的问题,您可以尝试以下选项之一来解决此问题:
选项 1 - 为服务启动添加参数。
- 打开
onlyofficeSsoAuth.service文件(在 CommunityServer 容器内):nano /lib/systemd/system/onlyofficeSsoAuth.service - 在
[Service]块的末尾添加以下字符串,指定根证书的路径:Environment=NODE_EXTRA_CA_CERTS=/etc/rootCA.pem - 重启服务:
systemctl daemon-reload systemctl restart onlyofficeSsoAuth
选项 2 - 使用系统证书包。
- 打开
onlyofficeSsoAuth.service文件(在 CommunityServer 容器内):nano /lib/systemd/system/onlyofficeSsoAuth.service - 在
[Service]块中找到以下字符串:ExecStart=/usr/bin/node /var/www/onlyoffice/Services/ASC.SsoAuth/app.js UNIX.SERVER将其替换为以下内容:
ExecStart=/usr/bin/node --use-openssl-ca /var/www/onlyoffice/Services/ASC.SsoAuth/app.js UNIX.SERVER - 对于 CentOS,另外在
[Service]块的末尾添加以下字符串,指定证书包的路径:Environment=SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.trust.crt - 重启服务:
systemctl daemon-reload systemctl restart onlyofficeSsoAuth
Docker 问题
问:我在没有使用docker stop id命令停止 docker 容器的情况下重启了服务器,现在我的服务器出现ERR_TOO_MANY_REDIRECTS错误。如何解决这个问题?
答:请编辑/var/www/onlyoffice/WebStudio/web.appsettings.config文件,删除最后一行:
<add key="web.warmup.type" value="basic" />
然后使用以下命令重启 monoserve:
sudo service monoserve restart问:我使用 Fedora Linux,进程无法在 Docker 容器内启动。有没有解决办法?
答:Fedora 和 RHEL/CentOS 用户应尝试使用setenforce 0命令禁用 SELinux。如果问题解决,您可以选择继续禁用 SELinux(RedHat 不推荐),或者切换到使用 Ubuntu。
ONLYOFFICE 文档使用问题
问:停止ONLYOFFICE 文档时发生数据丢失。如何防止数据丢失?
答:由于操作特性,ONLYOFFICE 文档仅在所有编辑过该文档的用户关闭文档后才会保存文档。为了避免数据丢失,当您需要停止ONLYOFFICE 文档(如应用程序更新、服务器重启等)时,必须强制断开ONLYOFFICE 文档用户。为此,请在安装ONLYOFFICE 文档的服务器上执行以下脚本:
sudo docker exec <CONTAINER> documentserver-prepare4shutdown.sh