LINUX.ORG.RU
ФорумAdmin

Проблема с обновлением Эскизов Nextcloud по https://

 


1

2

Добрый день.

Версия: Nextcloud Hub 9 (30.0.0) (apache)

Установил сервис nextcloud на 3 виртуальные машины NexCloud+Proxy+OnlyOffice, в nextCloud подключил шару внешнего хранилища по smb. Работа офиса складывается таким образом, внутренние сотрудники работают напрямую с шарой, а есть внешние, которые работают только через HTTPS://. И все бы ничего, но я столкнулся с проблемой:

  1. внутренний сотрудник создает каталог на шаре (через smb) и кладет туда файлы изображений.
  2. внешний сотрудник заходит на нее через HTTPS, в этот момент формируются эскизы этих изображений у внешнего. И вроде бы все хорошо, НО.
  3. в течении рабочего дня внутренний сотрудник вносит правки в изображения и кладет их в тот же каталог с теми же именами путем замены. Внешний сотрудник снова под своей УЗ заходит через HTTPS:// и видит старые эскизи(до правок) и предпросмотр также без внесенных изменений. Но если удаленщик скачает файл к себе на локальную машину, то файл скачивается верный со всеми правкам. И если он через интерфейс браузера закачает его обратно с заменой, то превью изменится.

Как побороть эту проблему я не понимаю.

  1. Фоновые задания через cron настроил выполняются (*/5 * * * * php -f /var/www/html/nextcloud/cron.php)
  2. Индексацию файлов (sudo -u www-data php occ files:scan –all) руками делал
  3. установил и настроил, c заданием, app Preview Generator ( */10 * * * * php /var/www/html/nextcloud/occ preview:pre-generate)
  4. Запуск браузера со сброшенным кещем или инкогнито не дают результата.
  5. Вход мимо ReverceProxy (думал, что он кеширует), напрямую на NextCloud, так же не приносят желаемого результата.

Причем, если я сделаю УЗ для нового удаленщика и он при первом входе провалится в этот каталог , то все превью формируются корректно, но опять же до первого изменения файла внутренним сотрудников (когда он положит его в сетевую шару.) Далее опять начинаются проблемы).

Есть ли настройка, чтобы при каждом входе превью файлов(эскизы) формировались каждый раз заново?

Перемещено hobbit из general



Последнее исправление: HravnDE (всего исправлений: 2)

Ответ на: комментарий от Pinkbyte

Уффф. ‘filesystem_check_changes’ => 0, Specifies how often the local filesystem (the Nextcloud data/ directory, and NFS mounts in data/) is checked for changes made outside Nextcloud. This does not apply to external storage.

0 -> Never check the filesystem for outside changes, provides a performance increase when it’s certain that no changes are made directly to the filesystem

1 -> Check each file or folder at most once per request, recommended for general use if outside changes might happen.

Defaults to 0

‘filesystem_check_changes’ => 1 добавлял, не помогает. Превью старые, а если файл скачиваешь ,то нормальный локально на ПК открывается).

Пробовал монтировать smb, nfs в nextcloud/data/share, публиковал как локальное хранилище ,но все равно не меняется ничего. Думал, что поможет, но нет. У меня внутренние дизайнеры часто публикуют материал, а внешние редакторы ничего не видят вовремя. А быстродействия в обновлении не могу добиться.

HravnDE
() автор топика

[Теоретически] Согласно ссылке должен сработать костыль в виде самописного скрипта на машине с NC, который мониторит изменившиеся файлы и улаляет их превью, тогда система при запросе будет его генерировать заново.

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

Jurik_Phys ★★★★★
()

Всё это очень ненадёжно работает. Тоже имею подключенную к nc шару через external storage. Постоянные проблемы с синхронизацией состояния, особенно, если кто-то пишет по подключенной хранилище напрямую.

aol ★★★★★
()

Так, а если:

  1. Удаленщик заходит в первый раз, формирует превью
  2. Меняем файл
  3. Удаленщин заходит, видит старое превью
  4. Удаленщик заходит с чистого профиля браузера или чистит кеш

Может это браузер локально кеширует и больше заново не загружает? У него ж на картинку таймер Expires стоит

PPP328 ★★★★★
()
Ответ на: комментарий от PPP328

Может это браузер локально кеширует и больше заново не загружает?

ТС же в описании проблемы пишет, что

Запуск браузера со сброшенным кещем или инкогнито не дают результата.

Jurik_Phys ★★★★★
()
Ответ на: комментарий от PPP328

Добрый день. На всякий случай. Схема такая

Дизайнеры - NasQNAP(Dizashare) - Nextcloud (Подключаем Dizshare используя External storage support) - WEB (внешние редакторы)

Что пробовал: 1.подключать как SMB/CIFS. 2.монтировал NFS в /var/www/html/nextcloud/data/share

Ситуация:

  1. дизайнер создает файл(изображение) в Dizashare
  2. Внешний редактор через web заходит, формируется эскиз согласно изображению и , вроде бы , все в норме. Но!
  3. дизайнер вносит изменение у себя на пк в это изображение и с этим же именем , путем замены, кладет файл Dizashare.
  4. Внешний редактор снова заходит через web в хтот каталог и не видит никаких изменений, как в Эскизе, так и превью когла пытается просмотреть изображение в web интерфесе. Прбовали в другом браузере открывать, режим инкогнито. Но ничего не происходит. 5 . если я создам новую УЗ для нового внешнего редактора и он провалится по web(с другого браузера, другого ПК) в этот же каталог, то видит перед собой так же не обновленные файлы. НО если эти файлы скачать себе на пк, то скачиваются они правильные с изменениями, и если далее через WEB залить их обратно на Dizashare, то эскиз и отображение меняется на верное.

Тут явно проблема в кеше БД, или не отработке запроса на изменение при обновлении страницы.

Да есть sudo -u www-data php occ files:scan –all, Но обно делао, когда файлов на 2-3Гб, а когда их на 150Гб? у меня сейчас Dizashare примерно 52Гб и 53 удаленщика и occ files:scan делается 60-70 минут) а за это время уже изменений внесли тучу) тут же нужно делать еще ра occ files:scan и т.д. Было бы идеально если бы при каждом запросе обновлялся и кеш и страница, уже пофиг на количествой запросов, думаю. Но ‘filesystem_check_changes’ => 1 не работает, и я , пожоже , не до конца понимаю логику применения этой опции (NFS смотриванный в ../nextcloud/data/share является для NС нормальным внутренним каталогом, или он по прежнему как внешний?)

Может я не так смотритовал? Может версия NC 30.0.0 глючная? Может ‘filesystem_check_changes’ => 1 нужно написать в какое-то четко определенное место в Config?

HravnDE
() автор топика