本文介绍了针对 OnlyOffice 加载缓慢问题的多维度缓存清理方案,涵盖前端构建、Docker 容器、系统级缓存、浏览器端以及云存储同步缓存等关键环节,帮助恢复系统流畅运行。
当您在使用 OnlyOffice 过程中遇到文档打开卡顿、界面反应迟钝,或出现字体错乱、样式丢失等问题时,通常是由各类缓存文件堆积、损坏或过期引起的。为彻底解决这些问题,建议按照以下方法逐项清理相关缓存。
一、清理前端构建缓存
前端构建过程中生成的缓存(例如 Webpack 缓存、node_modules 目录、dist 输出文件夹等)若长期未更新,可能导致浏览器加载陈旧的 JavaScript 或 CSS 文件,从而影响页面渲染速度和功能表现。通过清理这些缓存,可强制系统重新生成最新的静态资源。
1、切换到 OnlyOffice Docs 项目的根目录下,运行更新脚本:
bash mr-update.sh
2、如果该脚本无法执行,可手动删除以下目录:
rm -rf node_modules/ ~/.npm/_cacache/ dist/ build/
3、重新安装依赖并完成构建流程:
npm install && npm run build
二、清空 Docker 容器内的运行时缓存
在使用 Docker 部署 OnlyOffice 时,系统会在 /var/tmp、/var/www/cache 等路径下持续生成临时文件和文档渲染缓存。随着时间推移,这些文件不断累积,会显著降低首次加载文档的速度。
1、首先停止正在运行的容器实例:
docker stop onlyoffice
2、进入容器内部并清除缓存目录内容:
docker exec -it onlyoffice /bin/bash -c “rm -rf /var/tmp/* /var/www/cache/*”
3、退出容器环境后重新启动服务:
docker start onlyoffice
三、重置系统级缓存管理策略(基于时间与访问频率)
OnlyOffice 默认采用 LRU(最近最少使用)机制和文件修改时间(mtime)来判断缓存有效性。然而,若未配置定期清理任务,过期的缓存文件可能长期驻留磁盘,影响性能。建议手动干预或补充自动化清理机制。
1、手动移除所有缓存文件(注意:此操作不会影响原始文档):
rm -rf /var/www/cache/*
2、配置定时任务,实现每天凌晨 2 点自动删除超过 7 天的缓存文件:
echo “0 2 * * * find /var/www/cache -type f -mtime +7 -delete” | crontab –
3、检查定时任务是否成功添加:
crontab -l
四、清除浏览器端缓存与 Service Worker
浏览器会缓存 OnlyOffice 的 JavaScript、样式表、字体资源及预加载内容,而 Service Worker 可能拦截网络请求并返回旧版本资源,进而导致页面卡顿或功能异常。
1、在浏览器地址栏输入:
about:blank,随后按下 Ctrl+Shift+Delete(Windows)或 Cmd+Shift+Delete(macOS)
2、勾选“缓存的图像和文件”、“Cookie 及其他网站数据”、“Service Worker”这三项
3、将时间范围设置为“所有时间”,点击“清除数据”按钮
4、关闭所有与 OnlyOffice 相关的标签页,重启浏览器后再重新访问
五、清理 Office 文档同步缓存(适用于与 OneDrive/Nextcloud 集成的场景)
当 OnlyOffice 通过云存储网关(如 DocumentServer 配合 Nextcloud 插件,或 OnlyOffice 与 OneDrive for Business 集成)访问文档时,客户端会在本地生成临时同步缓存。一旦该缓存损坏,将阻碍元数据读取与版本比对,造成文档加载停滞。
1、确保当前账户拥有管理员权限,并执行干净启动(禁用所有非 Microsoft 启动项)
2、定位并删除本地 Office 文档缓存文件夹:
%localappdata%\Microsoft\Office\16.0\WEF\
3、同步清理云端缓存标识:
打开 OneDrive 客户端,右键点击系统托盘图标 → 选择“设置” → 进入“账户”选项卡 → 点击“取消链接此电脑”,之后重新登录账户完成同步重置

