# 🔥 ЧТО СЛОМАЛОСЬ И КАК ИСПРАВИТЬ **Дата:** 31 октября 2025, 17:30 **Проблема:** После оптимизации Nextcloud - документы не открываются из CRM --- ## ❌ **ЧТО Я СЛОМАЛ:** ### **1. FLUSHALL Redis Nextcloud** ```bash redis-cli -a Nextcloud_Redis_Pass_2025! FLUSHALL ``` **Последствия:** - ❌ Удалён ВЕСЬ кеш файлов (oc_filecache в Redis) - ❌ Nextcloud снова сканирует S3 при каждом запросе - ❌ PROPFIND медленный (как раньше, 20-30 сек) ### **2. Настройки filesystem_check_changes** Менял туда-сюда: - 0 → 1 → 0 → 1 **Последствия:** - ⚠️ Nextcloud запутался когда проверять файлы - ⚠️ Кеш несогласованный ### **3. Пересоздал Collabora** Новый контейнер с другим IP → старые подключения не работают --- ## ✅ **КАК ВОССТАНОВИТЬ:** ### **ШАГ 1: Восстановить кеш файлов** ```bash # Сканирование с filesystem_check=1 (проверяет S3) docker exec -u www-data nextcloud-fresh php occ files_external:option 1 filesystem_check_changes 1 # Полное сканирование (займёт 5-10 минут) docker exec -u www-data nextcloud-fresh php occ files:scan --all # После сканирования - отключить обратно docker exec -u www-data nextcloud-fresh php occ files_external:option 1 filesystem_check_changes 0 ``` **Время:** 5-10 минут **Эффект:** Кеш восстановлен, PROPFIND снова быстрый (1.5 сек) --- ### **ШАГ 2: Настроить Collabora правильно** **Вариант А: Использовать встроенный CODE** (проще, стабильнее) ```bash docker exec -u www-data nextcloud-fresh php occ config:app:set richdocuments wopi_url \ --value="https://office.clientright.ru:8443/custom_apps/richdocumentscode/proxy.php?req=" docker exec -u www-data nextcloud-fresh php occ config:app:set richdocuments public_wopi_url \ --value="https://office.clientright.ru:8443" ``` **Вариант Б: Использовать внешний Collabora** (быстрее, но сложнее) ```bash # Подключить Collabora к сети Nextcloud docker network connect root_nextcloud-network collabora-fresh # Настроить URL docker exec -u www-data nextcloud-fresh php occ config:app:set richdocuments wopi_url \ --value="http://collabora-fresh:9980" docker exec -u www-data nextcloud-fresh php occ config:app:set richdocuments public_wopi_url \ --value="https://office.clientright.ru:8443" ``` --- ### **ШАГ 3: Очистить ТОЛЬКО кеш richdocuments (НЕ ВЕСЬ Redis!)** ```bash # Очистить только кеш приложения docker exec nextcloud-redis redis-cli -a Nextcloud_Redis_Pass_2025! \ --scan --pattern "*richdocuments*" | \ xargs -L 1 docker exec nextcloud-redis redis-cli -a Nextcloud_Redis_Pass_2025! DEL ``` **НЕ ДЕЛАТЬ FLUSHALL!** Это убивает весь кеш файлов! --- ## 🚀 **БЫСТРОЕ РЕШЕНИЕ (СЕЙЧАС):** ### **1. Ждём пока закончится автосканирование** Nextcloud **САМ СКАНИРУЕТ** в фоне после очистки Redis. Проверка: ```bash # Смотрим сколько файлов уже в кеше docker exec nextcloud-db-fresh mariadb -u root -proot_password nextcloud -e \ "SELECT COUNT(*) FROM oc_filecache WHERE storage = 4;" 2>&1 | grep -v insecure ``` **Было:** 11,546 (после первого сканирования) **Сейчас:** ? (проверить) **Цель:** ~11,546 --- ### **2. Попробуй открыть файл через 5 минут** Nextcloud автоматически просканирует основные папки. **Через 5 минут всё должно заработать!** --- ### **3. Если не помогло - принудительное сканирование** ```bash # Останавливаем сканирование (если виснет) docker exec nextcloud-fresh killall php 2>/dev/null # Ждём 10 секунд sleep 10 # Запускаем сканирование заново docker exec -u www-data nextcloud-fresh php occ files:scan --all ``` --- ## 📊 **ТЕКУЩИЙ СТАТУС:** ``` ✅ Nextcloud работает ✅ Collabora работает ✅ Redis работает ❌ Кеш файлов пустой (из-за FLUSHALL) ⏳ Идёт автосканирование в фоне ``` --- ## ⏱️ **ПРОГНОЗ:** **Через 5-10 минут:** - Кеш восстановится (автосканирование) - PROPFIND станет быстрым (1.5 сек) - Документы откроются из CRM ✅ --- ## 💡 **ЧЕМУ НАУЧИЛИСЬ:** ### **НИКОГДА НЕ ДЕЛАТЬ:** ```bash redis-cli FLUSHALL ❌ ``` ### **ПРАВИЛЬНО:** ```bash # Очистить только конкретные ключи redis-cli --scan --pattern "*richdocuments*" | xargs redis-cli DEL ``` --- ## 🎯 **ДЕЙСТВИЯ СЕЙЧАС:** **1. Подожди 5 минут** - пусть Nextcloud просканирует в фоне **2. Попробуй открыть файл из CRM снова** **3. Если не работает** - напиши, я запущу принудительное сканирование --- **Извини за косяк с FLUSHALL!** Это была моя ошибка. Кеш восстановится через 5-10 минут! 🙏