إزالة تحذير قفل الملفات من Nextcloud باستخدام Redis
قم بتمكين قفل الملفات الموثوق به في Nextcloud، واختر الواجهة الخلفية المناسبة Redis أو Valkey، وتحقق من إزالة التحذير دون المخاطرة بتغييرات الملفات المتزامنة.
للبحث داخل محتويات الملفات في Nextcloud، ثبّت إطار عمل البحث النصي الكامل، وتطبيق منصة Elasticsearch الخاص به، وموفر الملفات؛ ثم اربط التطبيقات بخادم Elasticsearch 8 متوافق، وأنشئ الفهرس. يُضيف هذا إمكانية البحث في نصوص المستندات، ولكنه يُضيف أيضًا خدمة منفصلة لتأمينها ومراقبتها وصيانتها. يُشير ملف README الخاص بالموصل الحالي إلى أن Elasticsearch 8 هو الإصدار الرئيسي المدعوم، لذا تحقق من توافق إصدار التطبيق المُثبّت لديك قبل اختيار إصدار مُحدد من Elasticsearch.
يُساعد Elasticsearch المستخدمين في العثور على الكلمات داخل المستندات، متجاوزًا أسماء الملفات والبيانات الوصفية الأساسية. لكن في المقابل، يتطلب الأمر خدمة إضافية للتأمين والصيانة، بالإضافة إلى استهلاك الذاكرة والقرص ووحدة المعالجة المركزية أثناء الفهرسة. قد لا يُبرر استخدام سحابة صغيرة هذا العبء الإضافي؛ بينما قد يجد فريق عمل يتعامل مع كميات كبيرة من المستندات أن البحث عن المحتوى يستحق التكلفة.
تُشكّل ثلاثة تطبيقات التكامل: البحث النصي الكامل الذي يُنسّق بين المزوّد والمنصة، وElasticsearch الذي يربط الإطار بالمحرك، وFiles الذي يُوفّر محتوى الملفات. لا يُمكن تحديد سوى تطبيق منصة واحد في كل مرة. راجع ملف README الخاص بالإطار وملف README الخاص بمزوّد Files .
تستخدم أمثلة لينكس هذه مسارات وحسابات ديبيان أو أوبونتو www-data. عدّل المسارات ومستخدمي الخدمة للحاويات أو التوزيعات الأخرى.
تحقق من إصدارات Nextcloud والتطبيق قبل تثبيت Elasticsearch. يشير ملف README الخاص بالموصل إلى أنه بدءًا من إصدار التطبيق 26.0.0، يدعم Elasticsearch 8. لا تفترض أن Elasticsearch 9 متوافق لمجرد أنه أحدث؛ راجع ملف README الخاص بالموصل وويكي التثبيت للتأكد من توافقه مع إصدارك.
ثبّت Elasticsearch باتباع تعليمات Elastic الخاصة بنظام التشغيل لديك والإصدار الرئيسي المتوافق. تتضمن حزمة Elastic لنظام Debian مكتبة OpenJDK مدمجة، لذا لا يلزم عادةً تثبيت Java بشكل منفصل لهذه الحزمة. راجع وثائق تثبيت حزمة Elastic لنظام Debian . اجعل Elasticsearch متاحًا فقط من مضيف Nextcloud أو شبكة التطبيقات الخاصة، إلا إذا كانت بنية نظامك تتطلب خلاف ذلك. يُفعّل Elasticsearch 8 ميزات الأمان أثناء إعداد الحزمة؛ احتفظ بالمصادقة وTLS لعمليات النشر الشبكية، ولا تُعرّض أبدًا نقطة نهاية بحث غير مصادق عليها للإنترنت العام.
بمجرد بدء تشغيل الخدمة، اختبر نقطة النهاية محليًا باستخدام المخطط وبيانات الاعتماد المُحددة أثناء التثبيت. بالنسبة لنسخة محلية آمنة، قد يبدو الطلب كالتالي curl --cacert /path/to/http_ca.crt -u elastic https://localhost:9200؛ أدخل كلمة المرور عند المطالبة بها بدلًا من حفظها في سجل الأوامر. استخدم شهادة المرجع المصدق (CA) المُنشأة لتثبيتك، وليس المسار الافتراضي. يجب أن تُحدد الاستجابة الناجحة عقدة Elasticsearch وإصدارها. في حال فشل هذا الفحص، أصلح الخدمة أو موثوقية الشهادة أو بيانات الاعتماد قبل تهيئة Nextcloud.
استخدم صفحة التطبيقات في Nextcloud لتثبيت وتفعيل البحث النصي الكامل ، والبحث النصي الكامل - منصة Elasticsearch ، والبحث النصي الكامل - الملفات . يمكنك أيضًا استخدام occأداة إدارة سطر الأوامر الخاصة بـ Nextcloud من مجلد تثبيت Nextcloud. في نظامي Debian أو Ubuntu، يكون النمط كالتالي:
cd /var/www/nextcloud
sudo -E -u www-data php occ app:install fulltextsearch
sudo -E -u www-data php occ app:install fulltextsearch_elasticsearch
sudo -E -u www-data php occ app:install files_fulltextsearch
استخدم حساب HTTP الخاص بتوزيعتك واتبع إرشادات Nextcloud الخاصة بـ occ . إذا كان أحد التطبيقات مثبتًا ولكنه معطل، فاستخدم occ app:enable APP_ID. تأكد من توافق التطبيقات الثلاثة مع إصدار Nextcloud الخاص بك.
افتح إعدادات المسؤول، ثم حدد قسم البحث في النص الكامل. اختر Elasticsearch كمنصة البحث، ثم أدخل عنوان خادم Elasticsearch، واسم الفهرس، وأي بيانات اعتماد اتصال أو إعدادات شهادة مطلوبة يوفرها إصدار الموصل المُثبّت لديك. يجب أن يكون العنوان قابلاً للوصول من عملية خادم Nextcloud. إذا كانت الخدمتان تعملان في نفس شبكة الحاويات، localhostفعادةً ما يشير العنوان إلى حاوية Nextcloud نفسها، وليس حاوية Elasticsearch؛ استخدم اسم خدمة Elasticsearch أو اسم المضيف الداخلي بدلاً من ذلك.
استخدم اسم فهرس بأحرف صغيرة، مثل nextcloud`<اسم الفهرس>`؛ امنح كل سحابة فهرسًا منفصلاً إذا كانت تشترك في خدمة واحدة. تُسهّل الأسماء المنفصلة الإدارة، لكنها لا تُغني عن ضوابط الوصول. احرص على عدم تضمين بيانات الاعتماد في لقطات الشاشة، أو التذاكر، أو سجل الأوامر.
في إعدادات موفر الملفات، فعّل فهرسة أنواع الملفات ونطاق الأحجام التي يحتاجها المستخدمون. يعتمد المحتوى القابل للبحث على الموفر ودعم الاستخراج؛ ففهرسة أسماء الملفات وحدها لا تجعل النص داخل ملف PDF قابلاً للبحث. يستخرج معالج المرفقات في Elasticsearch النصوص من تنسيقات الملفات الشائعة مثل PDF ومستندات Office، ولكن تُطبق حدود الاستخراج والتنسيقات المدعومة. في Elasticsearch 8، تُضمّن وظيفة استيعاب المرفقات في التوزيعة؛ راجع مرجع معالج المرفقات في Elasticsearch . بالنسبة للمسح الضوئي أو الصور، لا يُعد استخراج نص المستند العادي تقنية التعرف الضوئي على الحروف (OCR): أضف موفر OCR فقط إذا كنت بحاجة إلى هذه الإمكانية وتحققت من متطلباتها. حافظ على حدود حجم الملفات منخفضة على خادم ذي موارد محدودة.
قم بإجراء فحص سلامة النظام قبل الفهرسة. من مجلد Nextcloud، استخدم ما يلي:
sudo -E -u www-data php occ fulltextsearch:check
قم أولاً بحل أخطاء الاتصال أو النظام الأساسي أو مزود الخدمة التي تم الإبلاغ عنها. ثم ابدأ عملية الفهرسة الأولية:
sudo -E -u www-data php occ fulltextsearch:index
تستعرض العملية الأولى ملفات المستخدمين المحددين، وقد تستغرق وقتًا طويلاً. حافظ على استقرار جلسة SSH أو شغّل الأمر في مُضاعِف طرفية مثل `/usr/bin` tmux، وراقب وحدة المعالجة المركزية والذاكرة ومساحة القرص. تقوم عملية الفهرسة بنسخ النصوص المستخرجة وبيانات تعريف الملفات إلى Elasticsearch؛ وهي ليست بديلاً عن النسخ الاحتياطية لـ Nextcloud. خطط لحماية فهرس البحث وبيانات اعتماده، وتذكر أن حذف الفهرس أو إعادة بنائه قد يتطلب عملية فهرسة كاملة أخرى.
لضمان التحديثات المستمرة، تأكد من تشغيل مهام Nextcloud الخلفية بشكل موثوق. يوثق المشروع أيضًا fulltextsearch:liveعاملًا للفهرسة شبه الفورية؛ إذ يُمكنه تقليل تأخير التحديث، ولكنه يُضيف خدمةً للإشراف. ابدأ بالمهام المُجدولة، وأضف العامل فقط إذا كان التأخير مُهمًا. عدّل مثال الخدمة الأصلية ليناسب مساراتك وحسابك وترتيب بدء تشغيل قاعدة البيانات.
بعد اكتمال الفهرسة، ابحث عن عبارة مميزة تظهر داخل مستند اختبار صغير ولكنها غير موجودة في اسم الملف. تأكد من أن Nextcloud يعرض الملف المطلوب لمستخدم لديه صلاحية قراءته. ثم حمّل أو عدّل مستند اختبار ثانٍ، واسمح بتشغيل المهمة الخلفية أو العامل المباشر المُعدّ مسبقًا، وكرّر البحث. لا يُعدّ نجاح فحص الحالة وحده دليلاً على فهرسة محتويات الملف.
إذا ظهرت أسماء الملفات فقط، فتحقق من موفر الملفات، وإعدادات نوع الملف وحجمه، ودعم الاستخراج، وسجلات الفهرسة. أما في حالة فشل الاتصال، فتحقق من نقطة النهاية من شبكة Nextcloud، وثقة TLS، وبيانات الاعتماد.
اختر Elasticsearch عندما يكون البحث عن المحتوى ذا قيمة كافية لتبرير صيانة خدمة أخرى ذات حالة. إذا كان البحث عن أسماء الملفات كافيًا، فتجاهل هذه الموارد الإضافية والعبء الأمني. قبل ترقيات بيئة الإنتاج، تحقق من تركيبة Nextcloud والتطبيق وElasticsearch بدقة؛ فهذا الإعداد لا يدعم جميع طرق النشر.
قم بتمكين قفل الملفات الموثوق به في Nextcloud، واختر الواجهة الخلفية المناسبة Redis أو Valkey، وتحقق من إزالة التحذير دون المخاطرة بتغييرات الملفات المتزامنة.
قم بإصلاح نتائج فحص Nextcloud الشائعة من خلال التحديثات الحالية، و HTTPS و HSTS، والثقة الدقيقة في الخادم الوكيل العكسي، وعمليات التحقق من الخادم العام.
قم بتكوين Nextcloud SSE للتخزين الذي يحتاج إليه، وقم بحماية مفاتيح التشفير، وقم بقياس تأثير النقل ووحدة المعالجة المركزية قبل تشفير الملفات الموجودة.
قم بتوصيل خاصية البحث عن الملفات في Nextcloud بـ Elasticsearch، وقم بفهرسة محتويات المستندات، واختر إعدادًا يناسب احتياجات الخادم والأمان لديك.
قم بتكوين Nextcloud لإزالة الملفات المحذوفة بعد فترة احتفاظ محددة، وجدولة مهام الخلفية بشكل موثوق، وتجنب الأوامر التي تقوم بمسح سلة المهملات الخاصة بكل مستخدم.
قم بتشغيل أداة إصلاح OCC الخاصة بـ Nextcloud بأمان، واستعرض تغييرات قاعدة البيانات، وتحقق من سبب استمرار التحذير.
السماح بتحميل ملفات أكبر حجماً عبر متصفح Nextcloud عن طريق ضبط إعدادات PHP أو Nginx أو Apache والتخزين المؤقت والمهلة الزمنية - والتحقق من الحد الذي يمنع الملف.
قم بتعيين حد ذاكرة PHP الذي يستخدمه Nextcloud فعليًا، وأعد تشغيل الخدمة الصحيحة، وتأكد من إعداد 512 ميجابايت في نظرة عامة على المسؤول.
قم بتثبيت حاوية تخزين كائنات متوافقة في Nextcloud باستخدام الواجهة الخلفية S3 الخاصة بها، مع نقطة النهاية الصحيحة، وبيانات الاعتماد، ونطاق الوصول، وخطوات التحقق.
قم بنقل دليل بيانات Nextcloud الخاص بنظام Linux بأمان إلى محرك أقراص خارجي باستخدام تركيب UUID ثابت، ووضع الصيانة، ونسخة تم التحقق منها، والرابط الرمزي للمسار الأصلي.