...
Официальные дистрибутивы ONLYOFFICE Docs Community для различных операционных систем, а также руководства по их установке доступны в [официальной документации ONLYOFFICE|https://www.onlyoffice.com/ru/download-community?ysclid=mraefple9q580120155(https://www.onlyoffice.com/ru/download-community?ysclid=mraefple9q580120155
)].
После успешного развертывания ONLYOFFICE Docs на отдельном сервере можно переходить к пошаговой настройке интеграции с Vitro-CAD.
...
Для работы редактора должны выполняться 4 сетевых соединения:
Инициатор | Адрес назначения | Назначение |
|---|---|---|
Браузер пользователя | Vitro-CAD | Открытие страницы редактора и получение конфигурации |
Браузер пользователя | DocumentServerUrl | Загрузка интерфейса и ресурсов ONLYOFFICE |
ONLYOFFICE Docs | PortalPublicUrl | Загрузка исходного файла и отправка результата сохранения (callback) |
Vitro-CAD | DocumentServerUrl | Проверка активной сессии и загрузка сохраненного файла |
- DocumentServerUrl — сетевой адрес сервера ONLYOFFICE Docs. Должен быть доступен из браузеров пользователей и с сервера Vitro-CAD.
- PortalPublicUrl — сетевой адрес сервера Vitro-CAD. Должен быть доступен с сервера ONLYOFFICE Docs.
...
- Выберите адреса подключения:
- DocumentServerUrl (например,
https://docs.example.ru/(https://www.google.com/search?q=https://docs.example.ru/) — — сетевой адрес сервера ONLYOFFICE Docs, доступный с рабочих мест и с сервера Vitro-CAD.
) - PortalPublicUrl (например,
https://vitro.example.ru/(https://www.google.com/search?q=https://vitro.example.ru/) —
)— сетевой адрес Vitro-CAD, доступный с сервера ONLYOFFICE Docs.
- DocumentServerUrl (например,
- Проверьте доступность адресов и портов между серверами:
- Windows (PowerShell):
Code Block language powershell Test-NetConnection docs.example.ru -Port 443 Test-NetConnection vitro.example.ru -Port 443
- Linux (Bash):
Code Block language bash curl -I [https://docs.example.ru/healthcheck](https://www.google.com/search?q=https://docs.example.ru/healthcheck) curl -I [https://vitro.example.ru/](https://www.google.com/search?q=https://vitro.example.ru/)
- Windows (PowerShell):
| Warning | ||
|---|---|---|
| ||
Если страница Vitro-CAD открывается по HTTPS, адрес DocumentServerUrl также обязан использовать HTTPS. В противном случае браузер заблокирует загрузку ONLYOFFICE как Mixed Content. |
...
- Создайте или отредактируйте файл onlyoffice.json на сервере Vitro-CAD:
- Windows:
C:\Program Files\Vitro Software\Vitro\Server\Conf\onlyoffice.json - Linux:
/etc/Vitro/Server/Conf/onlyoffice.json
- Windows:
- Укажите параметры конфигурации:
Code Block { "DocumentServerUrl": "[https://docs.example.ru/](https://www.google.com/search?q=https://docs.example.ru/)", "PortalPublicUrl": "[https://vitro.example.ru/](https://www.google.com/search?q=https://vitro.example.ru/)", "JwtSecret": "<JWT_SECRET>", "SessionLookupDays": 7 }
Параметры конфигурации:
Параметр | Обязательный | Назначение |
|---|---|---|
DocumentServerUrl | Да | Корневой адрес ONLYOFFICE Docs (доступный клиентам и серверу Vitro-CAD) |
PortalPublicUrl | Да | Корневой адрес Vitro-CAD (доступный с сервера ONLYOFFICE Docs) |
JwtSecret | Да | Секрет подписи запросов между Vitro-CAD и ONLYOFFICE Docs |
SessionLookupDays | Нет | Глубина поиска активной сессии в днях (по умолчанию 7) |
| Warning | ||
|---|---|---|
| ||
Протокол и порт должны точно соответствовать реальному адресу. |
...
- Windows (PowerShell):
Code Block powershell powershell $bytes = New-Object byte[] 32$generator32 $generator = [System.Security.Cryptography.RandomNumberGenerator]::Create() $generator.GetBytes($bytes) [Convert]::ToBase64String($bytes) $generator.Dispose()
- Linux:
Code Block bash bash openssl rand -base64 32
- Windows (PowerShell):
- Укажите полученное значение в параметре JwtSecret файла onlyoffice.json.
- Откройте файл local.json на сервере ONLYOFFICE Docs:
- Windows:
C:\Program Files\ONLYOFFICE\DocumentServer\config\local.json - Linux:
/etc/onlyoffice/documentserver/local.json
- Windows:
- Включите проверку JWT и укажите тот же секрет:
Code Block { "services": { "CoAuthoring": { "token": { "enable": { "browser": true, "request": { "inbox": true, "outbox": true } } }, "secret": { "inbox": { "string": "<JWT_SECRET>" }, "outbox": { "string": "<JWT_SECRET>" }, "session": { "string": "<JWT_SECRET>" } } } } }
...
Самоподписанный сертификат, принятый пользователем в браузере, не становится автоматически доверенным для службы ONLYOFFICE Docs. Параметр
Параметр services.CoAuthoring.requestDefaults.rejectUnauthorized: false допускается использовать только для временной диагностики.
...
7. Перезапуск служб
После изменения local.json на сервере ONLYOFFICE Docs и onlyoffice.json на сервере Vitro-CAD перезапустите службы.
...
Vitro-CAD передает в ONLYOFFICE идентификатор и имя пользователя текущей сессии.
Права Vitro-CAD | Режим ONLYOFFICE |
|---|---|
Нет Read | Открытие запрещено |
Есть Read, нет Upload | Только просмотр |
Есть Read и Upload | Редактирование актуальной версии |
Открыта конкретная версия | Только просмотр независимо от Upload |
...
10. Диагностика и устранение неполадок
Симптом | Причина и решение |
|---|---|
Вместо редактора скачивается файл |
|
Пустой документ или «Загрузка не удалась» | ONLYOFFICE Docs не смог загрузить файл с сервера Vitro-CAD. Проверьте PortalPublicUrl, маршрутизацию и |
файрволл между серверами, параметр allowPrivateIPAddress и логи docservice. | |
«Не удается сохранить документ» | ONLYOFFICE не может отправить POST на /onlyOffice/api/editor/processCallback/... или Vitro-CAD не может скачать файл по предоставленному адресу. |
Invalid token или код команды 6 | Не совпадают секреты JWT в onlyoffice.json и local.json (inbox, outbox, session), либо службы не были перезапущены. |
socket hang up, ECONNREFUSED | ONLYOFFICE Docs не может подключиться к PortalPublicUrl (например, ошибочно указан HTTP-протокол на HTTPS-порту или сетевое подключение заблокировано). |
Журналы (логи) ONLYOFFICE Docs:
...