前言
本文记录在 OnlyOffice DocumentServer Web 前端侧的定制修改,适用于 9.0.4 版本。修改基于统一 SDK api.js,对所有编辑器生效(文档/表格/演示/PDF/Visio)。
一、修改目标
- 关闭“输入用于协作的名称”匿名命名弹窗
- 隐藏“插件”功能区选项卡,并禁用插件能力
- 隐藏页眉左上角的 OnlyOffice Logo(去除跳转链接)
二、变更文件与位置
生产服务真实使用目录(按你的安装方式选择其一):
Docker: /var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js
Linux 安装版: 同上路径
Windows 安装版: C:\Program Files\ONLYOFFICE\DocumentServer\web-apps\apps\api\documents\api.js
模板文件(务必同步):api.js.tpl
压缩文件(务必处理):api.js.gz(可能还有 api.js.br)
说明:OnlyOffice 实际加载的资源通常带有版本哈希前缀,例如 /9.0.4-xxxx/web-apps/.../api.js。重启/升级后该目录可能再生成,因此建议同时改模板并处理压缩文件,或在业务集成处直接传参覆盖(见文末“更稳妥做法”)。
三、代码改动点(统一 SDK 默认配置)
修改 DocsAPI.DocEditor.defaultConfig.editorConfig.customization:
// 关闭匿名命名弹窗
anonymous: {
request: false
},
// 隐藏插件选项卡
layout: {
toolbar: {
plugins: false
}
},
// 完全禁用插件能力
plugins: false,
// 隐藏页眉 Logo(无渲染自然无链接)
logo: {
visible: false
}以上片段出现在:apps/api/documents/api.js 内 DocsAPI.DocEditor.defaultConfig 对象中
同步到 apps/api/documents/api.js.tpl,避免重启后被模板覆盖
四、同步到服务端并处理压缩文件
-
- 必须同步两处源码:api.js 与 api.js.tpl
- 压缩资源处理(二选一):
### 简便做法(回退用未压缩版)
```text
# 删除压缩文件,让服务器回退到未压缩的 api.js
# Linux
rm api.js.gz
rm api.js.br
# Windows 资源管理器直接删除 api.js.gz(和 api.js.br,如果有)
```
### 推荐做法(保持压缩以提升性能)
Windows(7-Zip + Brotli):
```text
# 进入目录:.../web-apps/apps/api/documents/
7z a -tgzip -mx=9 api.js.gz api.js
# 若有 brotli
.\brotli.exe -f -q 11 api.js -o api.js.br
```
Linux:
```text
# 进入目录:.../web-apps/apps/api/documents/
gzip -c -9 api.js > api.js.gz
brotli -f -q 11 api.js -o api.js.br # 如需
```
完成后:
重启 DocumentServer/容器/反向代理(示例:supervisorctl restart all 或重启容器/服务)
清浏览器与代理/CDN 缓存;或追加时间戳强刷:
http://
new DocsAPI.DocEditor(..., config) 显式传参覆盖了默认值
评论 (0)