قم بربط Seafile و Collabora باستخدام عنوان URL الصحيح لـ WOPI

لربط Seafile بـ Collabora Online، فعّل بروتوكول HTTPS على Seafile، ثم انشر Collabora، ووجّه تكامل Office الخاص بـ Seafile إلى نقطة اكتشاف Collabora. إذا كانت الخدمتان تعملان على نفس شبكة Docker، فسيستخدم دليل التكامل الحالي لـ Seafile عنوان URL الداخلي http://collabora:9980/hosting/discovery؛ أما إذا كانت Collabora تعمل على مضيف منفصل، فاستخدم عنوان URL العام الخاص بها عبر HTTPS.

يوثق دليل إدارة Seafile الحالي collabora.ymlتكامل Compose المخصص والإعدادات الخاصة به seahub_settings.py. قد تختلف ملفات النشر الدقيقة باختلاف إصدار Seafile، لذا استخدم الدليل المتوافق مع الإصدار المثبت لديك عند تعديل هذه الأمثلة.

قبل أن تبدأ

  • استخدم عنوان Seafile بتقنية HTTPS مع شهادة TLS صالحة. يشترط Seafile استخدام HTTPS للتكامل مع Collabora.
  • اعرف ما إذا كان Collabora سيعمل كحاوية أخرى على نفس مضيف Docker أو كخدمة مستضافة بشكل منفصل.
  • يجب أن يكون لديك صلاحيات المسؤول على دليل نشر Seafile و seahub_settings.py...
  • اختر تنسيقات المستندات التي تسمح بمعاينتها وتحريرها. تتحكم إعدادات Seafile في قوائم الامتدادات هذه.

يتواصل برنامجا Seafile وCollabora باستخدام بروتوكول WOPI. يوفر Seafile معلومات الوصول إلى المستندات، ويطلب Collabora الملف من Seafile. يحدد عنوان URL الخاص بالاكتشاف خدمة Collabora التي يجب استخدامها وإمكانيات التحرير التي توفرها.

1. تأكد من تفعيل بروتوكول HTTPS على Seafile

افتح Seafile في متصفحك وتأكد من أن عنوانه يبدأ بـ https://وأن شهادته صالحة. بالنسبة لنشر Seafile باستخدام Docker، يُظهر الدليل الحالي كيفية ضبط الإعدادات SEAFILE_SERVER_PROTOCOL=httpsفي .envالملف، ثم إكمال إعداد HTTPS من خلال الوكيل العكسي المُكوّن. لا تستخدم نقطة نهاية Seafile عامة ببروتوكول HTTP عادي.

# In the Seafile deployment .env file
SEAFILE_SERVER_PROTOCOL=https

احتفظ بالشهادة الأصلية والمفتاح الخاص تحت سيطرة خادم وكيل TLS أو مدير الشهادات. هذا الإعداد وحده لا يُصدر شهادة ولا يُهيئ خادم وكيل عكسي؛ أكمل خطوات HTTPS لنشرك قبل تفعيل تحرير Office عبر الإنترنت.

2. أضف Collabora إلى نشر Seafile Docker

لإعداد Docker الموثق على نفس المضيف، استخدم ملف Collabora Compose المُقدم من Seafile بدلاً من إنشاء تعريف حاوية غير ذي صلة. في دليل نشر Seafile، نزّل الملف الخاص بالإصدار اليدوي المطابق، وأضفه إلى القائمة collabora.ymlالموجودة . احتفظ بملفات Compose المستخدمة بالفعل في تثبيتك.COMPOSE_FILE.env

# Example for a Seafile 14.0 deployment
wget https://manual.seafile.com/14.0/repo/docker/collabora.yml

قم بتعيين متغيرات Collabora الموثقة بواسطة Seafile في .env:

COLLABORA_IMAGE=collabora/code
COLLABORA_PORT=6232
COLLABORA_USERNAME=your_admin_username
COLLABORA_PASSWORD=use_a_long_unique_secret
COLLABORA_ENABLE_ADMIN_CONSOLE=true
COLLABORA_ENABLE_FILE_LOGGING=false

استخدم كلمة مرور قوية وفريدة، وقيّد الوصول إلى .envالملف لاحتوائه على بيانات اعتماد. المنفذ المذكور هو المنفذ المُعرَّض في إعدادات تكامل Seafile؛ لا تفترض أنه المنفذ العام على خادم الوكيل العكسي الخاص بك. اتبع collabora.ymlالملف المطابق وإعدادات الوكيل لإصدارك.

بعد إضافة الخدمة إلى عملية النشر، ابدأ أو حدّث حزمة Compose باستخدام إجراء Seafile المعتاد. تجنّب نشر منفذ Collabora الداخلي مباشرةً على الإنترنت إلا إذا كان تصميمك يتطلب ذلك صراحةً وقمت بتأمين نقطة النهاية.

3. وجّه Seafile إلى رابط اكتشاف Collabora

عدّل الملف النشط seahub_settings.pyوأضف إعدادات التكامل. بالنسبة لإعداد Compose على نفس المضيف، يستخدم دليل Seafile اسم الخدمة ومنفذ Collabora الداخلي:

OFFICE_SERVER_TYPE = 'CollaboraOffice'
ENABLE_OFFICE_WEB_APP = True
OFFICE_WEB_APP_BASE_URL = 'http://collabora:9980/hosting/discovery'
WOPI_ACCESS_TOKEN_EXPIRATION = 30 * 60

OFFICE_WEB_APP_FILE_EXTENSION = (
    'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
    'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)

ENABLE_OFFICE_WEB_APP_EDIT = True
OFFICE_WEB_APP_EDIT_FILE_EXTENSION = (
    'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
    'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)

عنوان http://URL المذكور هنا هو عنوان الاتصال الداخلي بين الخدمات في شبكة Docker الموثقة لـ Seafile. لا يزال موقع Seafile الموجه للمتصفح بحاجة إلى بروتوكول HTTPS. يرجى عدم نسخ هذا العنوان الداخلي إلى بيئة نشر منفصلة.

بالنسبة لـ Collabora على مضيف مختلف، قم بتهيئة Collabora خلف بروتوكول HTTPS على المنفذ العام القياسي، مع قيام الخادم الوكيل العكسي بإعادة توجيه الطلبات إلى منفذ الاستماع الخاص بـ Collabora. عيّن عنوان URL الأساسي إلى اسم المضيف العام الفعلي الخاص بك، على سبيل المثال:

OFFICE_WEB_APP_BASE_URL = 'https://office.example.com/hosting/discovery'

تأكد من أن اسم المضيف في عنوان URL يُحلّل ويُقدّم شهادة صالحة من العملاء الذين يحتاجون إلى فتح المستندات. قم أيضًا بتهيئة قائمة السماح لبروتوكول WOPI في Collabora لقبول مضيف خادم Seafile. توضح وثائق Docker الرسمية لـ Collabora aliasgroupمتغير البيئة لتحديد مضيف WOPI المسموح به؛ طابق المضيف والبروتوكول المستخدمين من قِبل Seafile، وتجنّب الوصول العام باستخدام أحرف البدل على خادم الإنتاج.

4. أعد التشغيل واختبر الاتصال

أعد تشغيل Seafile ليتمكن Seahub من تحميل إعدادات Python الجديدة. استخدم إجراء إعادة التشغيل الخاص بحزمتك أو حزمة Compose أو إعداد Kubernetes؛ إذ تختلف أسماء الخدمات والأوامر باختلاف عمليات النشر. إذا أضفت ملف Compose جديدًا، فتأكد من تشغيل حاوية Collabora قبل اختبار سير عمل المتصفح.

افتح مستند Office مدعومًا من واجهة الويب الخاصة بـ Seafile. يجب أن يُفتح الملف في محرر Collabora، ويعرض محتواه، ويحفظ تغييرًا تجريبيًا بسيطًا في Seafile. يُعد فتح المستند بنجاح أكثر فائدة من مجرد التحقق من صفحة الاكتشاف، لأنه يُفعّل المتصفح، وSeafile، وCollabora، وتقنية نقل الملفات WOPI.

قم باستكشاف الأخطاء وإصلاحها عن طريق فحص كل اتصال

  • أبلغ Seahub عن خطأ في الاكتشاف: لا يمكن الوصول إلى Confirm OFFICE_WEB_APP_BASE_URLمن خدمة Seafile. استخدم اسم خدمة Docker الداخلي فقط عندما تشترك الحاويتان في نفس الشبكة.
  • يتم تحميل المحرر ولكن لا يمكن جلب الملف: تحقق من سجلات Collabora وسجلات Seafile. تأكد من أن Collabora يسمح لمضيف Seafile WOPI وأن شهادة HTTPS الخاصة بـ Seafile موثوقة.
  • يعمل على نفس المضيف ولكن ليس عن بعد: استبدل عنوان URL الداخلي بعنوان URL العام لاكتشاف HTTPS، وتأكد من DNS وTLS، وتحقق من أن الوكيل يقوم بإعادة توجيه طلبات Collabora إلى المنفذ 9980.
  • بعض التنسيقات فقط قابلة للفتح: مراجعة OFFICE_WEB_APP_FILE_EXTENSIONو OFFICE_WEB_APP_EDIT_FILE_EXTENSION. اجعل هذه القوائم مقتصرة على التنسيقات التي يحتاجها المستخدمون والتي يدعمها نظام Collabora الخاص بك.
  • تظهر الإعدادات دون تغيير بعد إعادة التشغيل: تأكد من أنك قمت بتحرير الخدمة النشطة seahub_settings.pyوأعدت تشغيل خدمة Seafile الصحيحة.

بالنسبة لعقدة Collabora المستقلة، يوجه Seafile المسؤولين تحديدًا إلى وثائق نشر Collabora بدلاً من استخدام الملف المرفق collabora.yml. هذا الملف المرفق مُصمم لنفس ترتيب مضيف/شبكة Docker الموضح أعلاه.

المراجع الرسمية

اترك تعليقاً

قم بربط Seafile و Collabora باستخدام عنوان URL الصحيح لـ WOPI

قم بربط Seafile و Collabora باستخدام عنوان URL الصحيح لـ WOPI

قم بتمكين تحرير المستندات بشكل آمن في Seafile عن طريق تكوين عنوان URL لاكتشاف Collabora و HTTPS والوصول إلى WOPI لنشرك.

استعادة النسخ واللصق بين تطبيقات Collabora وتطبيقات سطح المكتب

استعادة النسخ واللصق بين تطبيقات Collabora وتطبيقات سطح المكتب

اختبر حافظة النظام، واضبط أذونات المتصفح، وحدد متى يحتاج تكامل Collabora المضمن إلى تغيير سياسة iframe.

توفير خطوط مخصصة في Collabora CODE Docker

توفير خطوط مخصصة في Collabora CODE Docker

قم بتثبيت ملفات الخطوط في Docker ولوحة نظام Collabora بحيث تظهر الخطوط المخصصة في المحرر ويتم عرضها بشكل صحيح في المستندات.

استعادة إعدادات Collabora CODE دون فقدان تغييرات النشر

استعادة إعدادات Collabora CODE دون فقدان تغييرات النشر

قم بعمل نسخة احتياطية من ملف coolwsd.xml ومصادر النشر الخاصة به، واستعدها بأمان، وتحقق من الكود قبل أن يعود المستخدمون إلى التحرير.

قم بإصلاح فحص مضيف WOPI الخاص بـ CODE عن طريق مطابقة أصل المضيف

قم بإصلاح فحص مضيف WOPI الخاص بـ CODE عن طريق مطابقة أصل المضيف

قم بالسماح بمصدر Nextcloud المحدد أو مصدر WOPI آخر في CODE، ثم تحقق من قائمة السماح للمضيف النشط وقم بتمييزها عن تقييد عنوان IP المصدر الخاص بـ Nextcloud.

حل مشكلة "حسنًا، هذا محرج" في Collabora

حل مشكلة "حسنًا، هذا محرج" في Collabora

قم بتتبع اتصالات متصفح Collabora و WOPI و WebSocket لمعرفة سبب عدم فتح المستند، ثم قم بتطبيق الإصلاح الذي يتوافق مع إعداد Nextcloud الخاص بك.

تشغيل Collabora عبر الإنترنت على عقد Kubernetes

تشغيل Collabora عبر الإنترنت على عقد Kubernetes

قم بنشر نسخ Collabora CODE باستخدام Helm، واحتفظ بكل مستند على وحدة واحدة من خلال تقارب WOPI، وتحقق من الدخول، ووضع العقدة، وتحرير Nextcloud.

استعادة اتصال WebSocket الخاص بـ Collabora عبر الوكيل

استعادة اتصال WebSocket الخاص بـ Collabora عبر الوكيل

تتبع عملية المصافحة الفاشلة من المتصفح إلى coolwsd، ثم قم بمطابقة مسار الوكيل العكسي مع إصدار Collabora الخاص بك، بما في ذلك تغيير Apache CODE 26.04.

إصلاح أخطاء إثبات WOPI عن طريق فحص المفاتيح والاكتشاف وعناوين URL

إصلاح أخطاء إثبات WOPI عن طريق فحص المفاتيح والاكتشاف وعناوين URL

تتبع حالات فشل إثبات Collabora WOPI إلى مفاتيح غير متطابقة، أو بيانات اكتشاف قديمة، أو انحراف الساعة، أو تغييرات عنوان URL للوكيل - دون إضعاف التحقق.

إصلاح قائمة أحجام الخطوط المنسدلة المعروضة بشكل خاطئ في Collabora Online

إصلاح قائمة أحجام الخطوط المنسدلة المعروضة بشكل خاطئ في Collabora Online

أعد ضبط تكبير/تصغير المتصفح، واختبر جلسة نظيفة، وحدد متى تحتاج قائمة الحجم المشوهة إلى تحديث خادم Collabora.