Интеграция с OnlyOffice
- Евгений
- Сообщения: 467
- Зарегистрирован: 11 июл 2016, 13:21
- Имя: Евгений
- Откуда: Петропавловск-Камчатский
Интеграция с OnlyOffice
Развернул Руководитель 3.6 с нуля, на новой виртуалке. Создал поле типа "ONLYOFFICE Сервер". Настроил доступ к серверу онлайн-редактирования, адрес API и токен. Сервер onlyoffice-documentserver установлен в нашей локальной сети.
Если открыть документ на редактирование, то появляется сообщение "Не удается сохранить документ. Проверьте параметры подключения или обратитесь к вашем администратору. Когда вы нажмете кнопку ОК, вам будет предложено скачать документ". Нажимаю "ОК" в окне сообщения, потом Esc чтобы не скачивать файл - и после этого редактирование документа идет совершенно нормально. Все изменения сохраняются, одновременное редактирование в файле происходит корректно.
Проблема где-то на стороне сервера Руководитель, в настройках. Этот же самый сервер документов OnlyOffice я открываю из другого веб-приложения, в нем документы открываются без этого сообщения.
В чем может быть проблема, где искать, как исправить?
Если открыть документ на редактирование, то появляется сообщение "Не удается сохранить документ. Проверьте параметры подключения или обратитесь к вашем администратору. Когда вы нажмете кнопку ОК, вам будет предложено скачать документ". Нажимаю "ОК" в окне сообщения, потом Esc чтобы не скачивать файл - и после этого редактирование документа идет совершенно нормально. Все изменения сохраняются, одновременное редактирование в файле происходит корректно.
Проблема где-то на стороне сервера Руководитель, в настройках. Этот же самый сервер документов OnlyOffice я открываю из другого веб-приложения, в нем документы открываются без этого сообщения.
В чем может быть проблема, где искать, как исправить?
- support
- Техническая поддержка
- Сообщения: 9338
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Интеграция с OnlyOffice
"Не удается сохранить документ", означает что OnlyOffice не может выполнит callbackUrl для сохранения в программе.
смотрите JS/PHP логи. И в папке /logs посмотрите https://docs.rukovoditel.net.ru/index.php?p=149
смотрите JS/PHP логи. И в папке /logs посмотрите https://docs.rukovoditel.net.ru/index.php?p=149
- Евгений
- Сообщения: 467
- Зарегистрирован: 11 июл 2016, 13:21
- Имя: Евгений
- Откуда: Петропавловск-Камчатский
Re: Интеграция с OnlyOffice
В папке /logs ничего не появилось, пустая.
Включил в Руководителе логи HTTP, PHP включение логов JS не вижу.
Выполнил редактирование в ОО, в Руководителе в разделе Логи/PHP пусто, в разделе Логи/HTTP выдает вот это, но не вижу никакой ошибки:
Включил в Руководителе логи HTTP, PHP включение логов JS не вижу.
Выполнил редактирование в ОО, в Руководителе в разделе Логи/PHP пусто, в разделе Логи/HTTP выдает вот это, но не вижу никакой ошибки:
- Евгений
- Сообщения: 467
- Зарегистрирован: 11 июл 2016, 13:21
- Имя: Евгений
- Откуда: Петропавловск-Камчатский
Re: Интеграция с OnlyOffice
Все три компьютера - мой АРМ, сервер с Руководителем, сервер с ОнлиОфисом - все видят друг друга и пингуют по именам.
Возможно, на сервере Руководитель заблокирован какой-то порт, на который ОнлиОфис пытается сделать callbackUrl ?
Возможно, на сервере Руководитель заблокирован какой-то порт, на который ОнлиОфис пытается сделать callbackUrl ?
- support
- Техническая поддержка
- Сообщения: 9338
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Интеграция с OnlyOffice
Js логи в браузере посмотрите.
И HTTP логи на сервер смотрите а не в программе.
И HTTP логи на сервер смотрите а не в программе.
- Евгений
- Сообщения: 467
- Зарегистрирован: 11 июл 2016, 13:21
- Имя: Евгений
- Откуда: Петропавловск-Камчатский
Re: Интеграция с OnlyOffice
Разобрался. Сервер Руководитель у нас установлен на отечественной ОС Астра Линукс, вариант защищенности "Усиленный". Соответственно блокирует все недоверенные подключения, в данном случае со стороны сервера документов ОнлиОфис.
Проверил работу сервера Руководитель на "голом" линуксе, Дебиан 12. Всё работает отлично! Документы открываются, редактируются и сохраняются без ошибок. Нужно просто донастроить ОС Астра, дать доступ для подключений со стороны ОнлиОфиса. Проблема решена.
Проверил работу сервера Руководитель на "голом" линуксе, Дебиан 12. Всё работает отлично! Документы открываются, редактируются и сохраняются без ошибок. Нужно просто донастроить ОС Астра, дать доступ для подключений со стороны ОнлиОфиса. Проблема решена.
- Евгений
- Сообщения: 467
- Зарегистрирован: 11 июл 2016, 13:21
- Имя: Евгений
- Откуда: Петропавловск-Камчатский
Re: Интеграция с OnlyOffice
На защищенной ОС при открытии файла на редактирование выдает такую ошибку:
2024/10/30 15:00:11 [error] 950#950: *482 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Firebase\JWT\BeforeValidException: Cannot handle token prior to 2024-10-30T15:04:43+1200 in /var/www/rukovoditel/includes/libs/jwt/JWT.php:124
Stack trace:
#0 /var/www/rukovoditel/modules/onlyoffice/actions/callback.php(72): Firebase\JWT\JWT::decode()
#1 /var/www/rukovoditel/index.php(31): require('...')
#2 {main}
thrown in /var/www/rukovoditel/includes/libs/jwt/JWT.php on line 124" while reading response header from upstream, client: 192.168.11.38, server: test.local, request: "POST /index.php?module=onlyoffice/callback&entity_id=25&item_id=1&field=214&file=2&date=1730173188 HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm.sock:", host: "test.local"
2024/10/30 15:00:11 [error] 950#950: *482 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Firebase\JWT\BeforeValidException: Cannot handle token prior to 2024-10-30T15:04:43+1200 in /var/www/rukovoditel/includes/libs/jwt/JWT.php:124
Stack trace:
#0 /var/www/rukovoditel/modules/onlyoffice/actions/callback.php(72): Firebase\JWT\JWT::decode()
#1 /var/www/rukovoditel/index.php(31): require('...')
#2 {main}
thrown in /var/www/rukovoditel/includes/libs/jwt/JWT.php on line 124" while reading response header from upstream, client: 192.168.11.38, server: test.local, request: "POST /index.php?module=onlyoffice/callback&entity_id=25&item_id=1&field=214&file=2&date=1730173188 HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm.sock:", host: "test.local"
- support
- Техническая поддержка
- Сообщения: 9338
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Интеграция с OnlyOffice
Там кусочек кода, проверка токена на дату
includes/libs/jwt/JWT.php:124
где то конфликт, и проверка не проходит. Может формат даты не тот или еще что.
Думаю в вашем случае просто закомментируйте этот кусок кода.
includes/libs/jwt/JWT.php:124
Код: Выделить всё
if (isset($payload->iat) && $payload->iat > ($timestamp + static::$leeway)) {
throw new BeforeValidException(
'Cannot handle token prior to ' . date(DateTime::ISO8601, $payload->iat)
);
}
Думаю в вашем случае просто закомментируйте этот кусок кода.
- Евгений
- Сообщения: 467
- Зарегистрирован: 11 июл 2016, 13:21
- Имя: Евгений
- Откуда: Петропавловск-Камчатский
Re: Интеграция с OnlyOffice
Да, это помогло. Закомментировал этот кусок кода и онлайн-редактор стал открываться без сообщения о неудаче.
Большое спасибо!
Поэкспериментирую дальше, проверю по этому куску в чем там на самом деле разница.
Большое спасибо!
Поэкспериментирую дальше, проверю по этому куску в чем там на самом деле разница.