Гид по технологиям

Интеграция ONLYOFFICE Docs со Strapi

5 min read Интеграция Обновлено 21 Nov 2025
Интеграция ONLYOFFICE Docs со Strapi
Интеграция ONLYOFFICE Docs со Strapi

Схема интеграции ONLYOFFICE Docs со Strapi и поток данных между ними

ONLYOFFICE Docs — это открытый офисный пакет с веб‑просмотрщиками и совместными редакторами для текстов, таблиц, презентаций, заполняемых форм и PDF. Формат ядра — OOXML (DOCX, XLSX, PPTX). Решение распространяется под GNU AGPL v3.0.

Strapi — это open‑source CMS на Node.js для создания цифровых продуктов и доставки контента на сайты и приложения. При интеграции с ONLYOFFICE Docs вы сможете открывать, редактировать и совместно править документы прямо в интерфейсе Strapi.

Важно: ONLYOFFICE совместим с Strapi версии 4.0 и выше.

Что понадобится

  • Сервер или машина с Docker для запуска ONLYOFFICE Document Server.
  • Проект Strapi (v4+) с правами администратора для установки плагина и правки конфигурации.
  • Базовые навыки работы с терминалом и npm/yarn.

Шаг 1: Установите ONLYOFFICE Docs

Рекомендуемый способ — через Docker. Команда запускает последний образ Document Server и выставляет порт 8080:

sudo docker run -i -t -d -p 8080:80 --restart=always onlyoffice/documentserver

Подробные инструкции по установке доступны в официальных гайдах и на ресурсах сообщества. Если требуется установка на Ubuntu для 64‑битной ARM‑архитектуры — используйте отдельную инструкцию по ARM.

Важно: при деплое в production учитывайте резервное копирование, SSL (TLS) и управление обновлениями контейнера.

Шаг 2: Установите интеграционный плагин в Strapi

Чтобы редактор мог загружать скрипты и открываться в iframe, нужно скорректировать политику Content Security Policy в файле middlewares Strapi.

Откройте файл strapi/config/middlewares.js и замените или дополните секцию strapi::security так, чтобы разрешить загрузку скриптов и iframe из ваших адресов:

{  
  name: "strapi::security",  
  config: {  
    contentSecurityPolicy: {  
      useDefaults: true,  
      directives: {  
        "script-src": ["'self'", "https:", "http:"],  
        "frame-src": ["'self'", "https:", "http:"],  
      },  
    },  
  },  
},

Если конфигурация уже есть — добавьте только директивы script-src и frame-src.

Установите плагин ONLYOFFICE для Strapi в корне проекта:

npm install onlyoffice-strapi --save

После установки перестройте административный интерфейс и перезапустите Strapi:

# использование yarn
yarn build
yarn develop
# использование npm
npm run build
npm run develop

Плагин также доступен в официальном маркетплейсе Strapi.

Шаг 3: Настройте плагин в Strapi

Откройте панель Strapi: Settings -> Global settings -> ONLYOFFICE.

Укажите параметры:

  • Document server address — URL вашего ONLYOFFICE Document Server (например, https://docs.example.com или http://localhost:8080).
  • Document server JWT secret — секретный ключ для JWT, который защищает документы от неавторизованного доступа. Этот же секрет нужно прописать в конфигурации ONLYOFFICE Document Server.

Настройки ONLYOFFICE в панели Strapi с полем адреса сервера и секретом JWT

Советы по конфигурации:

  • Для production используйте HTTPS и валидный сертификат.
  • Храните JWT‑секрет в защищённом хранилище (переменные окружения, секреты провайдера).
  • Если Document Server не на том же домене, убедитесь, что CORS и CSP разрешают соединение.

Шаг 4: Использование редактора в Strapi

Файлы DOCX, XLSX и PPTX, загруженные в Media Library Strapi, можно просматривать, редактировать и совместно править прямо из интерфейса. Откройте 파일 на странице ONLYOFFICE внутри Strapi — редактор запускается по клику на имя файла или по действию Edit in ONLYOFFICE.

Интерфейс файла ONLYOFFICE внутри Strapi с списком документов

Права доступа:

  • Открытие на редактирование: роль пользователя должна иметь права Update (crop, details, replace) и delete.
  • Открытие на просмотр: роль пользователя должна иметь право Access the Media Library.

Доступные функции совместной работы:

  • Режимы реального времени и блокировки абзацев.
  • Отслеживание изменений (Track Changes).
  • Комментирование и встроенный чат.
  • Аудио/видеозвонки через плагин Jitsi (устанавливается отдельно).

Проверка работоспособности и методология теста

Мини‑методология (шаги тестирования):

  1. Убедитесь, что Document Server отвечает на адресе (curl https://ваш‑документ‑сервер).
  2. В Strapi заполните настройки ONLYOFFICE и сохраните.
  3. Загрузите тестовый DOCX в Media Library.
  4. Попробуйте открыть файл на просмотр и на редактирование разными ролями.
  5. Проверьте совместное редактирование с двумя браузерами и экспорт файла.

Критерии приёмки:

  • Редактор открывается без ошибок и без блокировок CSP.
  • Редактирование синхронизируется между сессиями в реальном времени.
  • JWT проверяется (если включён): запросы с неверным секретом блокируются.

Ролевые чек‑листы

Администратор:

  • Установить и запустить Document Server (Docker).
  • Настроить HTTPS и брандмауэр.
  • Прописать JWT секрет и убедиться в его безопасности.

Разработчик Strapi:

  • Обновить middlewares.js и добавить CSP директивы.
  • Установить onlyoffice-strapi и перестроить админку.
  • Протестировать CORS и интеграцию.

Редактор/Контент‑менеджер:

  • Загрузить файлы в Media Library.
  • Провести тест редактирования и комментариев.
  • Сообщать об ошибках администратору.

Когда интеграция может не подойти

  • У вас строгие политики безопасности, запрещающие внешние iframe или скрипты без тщательной проверки.
  • Требуется полностью оффлайн‑решение без доступа к внешним сервисам.
  • Предпочтение отдано другим редакторам (Collabora/LibreOffice Online) из‑за лицензионных или функциональных требований.

Альтернативные подходы

  • Встраивание редактора через собственный бекэнд‑проксирование запросов к Document Server.
  • Использование других open‑source редакторов (Collabora Online) если нужен LibreOffice‑совместимый движок.
  • Генерация и редактирование через серверные конвертации без интерактивного веб‑редактора.

Безопасность и соответствие требованиям конфиденциальности

  • Всегда включайте JWT между Strapi и ONLYOFFICE для защиты ссылок на документы.
  • Настройте HTTPS для Document Server и Strapi.
  • Для обработки персональных данных продумайте политику хранения и удаления файлов (GDPR): срок хранения, журнал доступа, права пользователя.

Совместимость и миграция

  • ONLYOFFICE официально поддерживает Strapi v4.0 и выше.
  • При миграции Strapi с v3 на v4 проверьте совместимость плагинов и API.
  • Перед массовым переносом файлов протестируйте рабочий процесс на стенде.

Глоссарий (одно предложение на термин)

  • Document Server — сервер, где выполняются рендер и совместное редактирование документов.
  • JWT — JSON Web Token, механизм передачи и проверки подписанных токенов для аутентификации запросов.
  • Media Library — встроенная в Strapi библиотека для управления файлами и медиа.

Итог

После выполнения шагов вы получите интегрированное решение, где контент‑менеджеры могут создавать и править офисные документы прямо в Strapi с возможностью совместной работы. Проведите тесты с разными ролями и настройте безопасность (JWT, HTTPS) перед релизом.

Важно: если появятся ошибки, первым делом проверьте логи Document Server и консоль браузера на предмет CSP/CORS и ошибок загрузки скриптов.

Ключевые ссылки и дальнейшие шаги:

  • Документация ONLYOFFICE для продакшн‑деплоя.
  • Документация Strapi по плагинам и middlewares.

Заметка: плагин Jitsi для звонков устанавливается отдельно и требует дополнительной настройки.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство