أسرع حل موثوق هو جعل Collabora Online CODE يثق باسم المضيف والمنفذ اللذين يظهران في عنوان URL المصدر WOPI المُرسل من منصة التخزين الخاصة بك. بالنسبة لخادم Nextcloud واحد، اضبط قائمة المضيفين المسموح لهم في CODE على اسم مضيف Nextcloud هذا، ثم أعد إنشاء الحاوية، واختبر مرة أخرى. إذا كنت تُشغّل عدة نسخ من Nextcloud، فامنح كل نسخة منها صلاحية الوصول بشكل صريح. لا تُحلّ المشكلة بفتح الوصول إلى WOPI لكل مضيف.
عادةً ما تعني عبارة "مضيف WOPI غير مصرح به" أن Collabora رفضت مضيف التخزين المذكور في طلب WOPI. ولا تُثبت هذه العبارة، بحد ذاتها، وجود خطأ في كلمة مرور المستخدم، أو صلاحيات الوصول إلى المستندات، أو شهادة TLS، أو الخادم الوكيل العكسي. إذ قد تتسبب هذه المكونات في فشل الاتصال، لذا يُنصح باستخدام سجلات Collabora لتحديد السبب الدقيق قبل تغيير الإعدادات.
اختر التغيير الذي يتوافق مع عملية النشر الخاصة بك
| الانتشار | التغيير الموصى به | التنازل عن ميزة ممن أجل الحصول على أخرى |
| نسخة واحدة من Nextcloud مع Docker CODE | قم بتعيين مضيف موثوق به واحد بشكل صريح، عادةً aliasgroup1أو الإعداد المدعوم domainلإصدار الصورة الخاص بك. | سهل المراجعة ومقيد؛ تأكد من أن القيمة تطابق المضيف والمنفذ المستخدمين في طلبات WOPI. |
| عدة نسخ من Nextcloud تستخدم خادم CODE واحد | أضف مجموعة مضيفين صريحة واحدة لكل اسم مضيف تخزين وأسمائه المستعارة المقصودة. | يعمل التحرير المركزي، ولكن كل مضيف إضافي يوسع مجموعة الأنظمة المسموح لها بإرسال طلبات WOPI. |
| Collabora Online المعبأة بدلاً من Code Docker | قم بتحديث قسم مضيف WOPI في التكوين المُدار للخدمة وأعد تشغيل الخدمة. | يوفر تحكمًا مباشرًا في التكوين؛ قد يتم استبدال التعديل اليدوي للملف الذي تم إنشاؤه بواسطة تحديثات إدارة الحزمة أو التكوين. |
| أبلغت خدمة Nextcloud عن تحذير بشأن قائمة السماح الخاصة بـ WOPI | قم بشكل منفصل بالسماح بعنوان IP لخادم Collabora المتوقع في إعدادات إدارة Office الخاصة بـ Nextcloud. | هذا فحص ثانٍ في الاتجاه المعاكس؛ وهو لا يحل محل تكوين المضيف الموثوق به الخاص بـ CODE. |
تفترض الأمثلة أدناه استخدام Nextcloud على https://cloud.example.comوCollabora على https://office.example.com. استبدل كلا الاسمين والمنفذ بالقيم المستخدمة في تثبيتك. يستخدم دليل إعداد Docker الخاص بـ Nextcloud aliasgroup1اسم مضيف تخزين واحد، ويشرح كيفية إضافة مجموعة أسماء مستعارة أخرى لمضيف Nextcloud ثانٍ. يحدد تكوين WOPI الخاص بـ Collabora مطابقة المضيف بناءً على اسم المضيف والمنفذ؛ والأسماء المستعارة هي أسماء بديلة لنفس مضيف التخزين.
1. تأكد من المضيف الذي رفضته كولابورا
ابدأ بسجلات حاوية CODE. في عملية نشر Docker Compose، قم بتشغيل ما يلي:
docker compose logs --since=10m collabora
استبدل collaboraاسم الخدمة في ملف Compose الخاص بك. مع Docker العادي، استخدم docker logs --since 10m CONTAINER_NAME. ابحث بالقرب من محاولة فتح المستند الفاشلة عن رسالة مثل No acceptable WOPI hosts found matching the target host [cloud.example.com] in config. اسم المضيف بين قوسين هو الدليل: أضف مضيف التخزين الموضح هناك، وليس اسم المضيف العام لخادم Collabora.
سجّل أيضًا اسم المضيف والمنفذ في عنوان URL الخاص بـ WOPI، إن وُجدا في السجل. قارنهما بالإدخال المُكوّن. cloud.example.com:443قد لا يتطابق طلبٌ ما مع إدخال اسم حاوية داخلية، مثل nextcloud، حتى لو كان كلا الاسمين يُشيران إلى نفس الجهاز. قد تُسهّل الخوادم الوكيلة العكسية، ونظام أسماء النطاقات المُجزّأ، وعناوين URL العامة المتعددة، إغفال هذا التباين.
إذا أظهرت السجلات خطأً مختلفًا، مثل فشل البحث عن نظام أسماء النطاقات (DNS)، أو رفض الاتصال، أو خطأ في الشهادة، فقم بإصلاح تلك المشكلة بدلاً من توسيع قائمة مضيفي WOPI.
2. تحديث إعدادات مضيف WOPI الموثوق به في CODE
بالنسبة لتثبيت Docker Compose الذي يخدم مضيف Nextcloud واحد، يمكن أن يبدو الجزء ذو الصلة من الخدمة كما يلي:
services:
collabora:
image: collabora/code
environment:
- aliasgroup1=https://cloud.example.com:443
احتفظ بباقي خيارات الخدمة والأسرار ووحدات التخزين والمنافذ وإعدادات الخادم الوكيل العكسي الحالية. يوضح المثال إدخال قائمة السماح فقط؛ وهو ليس ملف Compose كاملاً للإنتاج. استخدم نمط الإعدادات المدعوم مسبقًا في إصدار CODE الذي تستخدمه، وتحقق من التكوين المُعالَج أو تكوين بدء التشغيل بعد تغييره. قد تتغير صور الحاويات وواجهات التكوين بمرور الوقت.
بالنسبة لمضيف واحد، يُعدّ إدخال اسم المضيف الدقيق أسهل في التدقيق من استخدام تعبير نمطي عام. إذا كان تثبيتك يعتمد على domainمتغير البيئة، فتحقق من قواعد الهروب الموثقة لصورتك، وتأكد من أن التعبير يطابق اسم مضيف التخزين المقصود فقط. لا تنسخ حرفًا بدلًا من الأحرف الخاصة أو نمط نطاق رئيسي قد يطابق نطاقات فرعية غير ذات صلة.
في حال وجود أكثر من نسخة من Nextcloud، أضف مجموعة منفصلة لكل مضيف مستقل باستخدام الآلية التي يدعمها إصدار CODE الخاص بك. على سبيل المثال، يُظهر دليل تكامل Docker الخاص بـ Nextcloud إضافةً aliasgroup2لاسم مضيف سحابي ثانٍ. أضف أسماءً مستعارة فقط عندما يكون خادم Nextcloud واحدًا مُتاحًا بالفعل بأسماء متعددة، مثل اسم داخلي واسم عام. احتفظ بقائمة مكتوبة بهذه الأسماء حتى تتمكن من إزالة اسم المضيف القديم بعد عملية الترحيل.
3. أعد إنشاء الحاوية وتحقق من قائمة السماح المنفصلة الخاصة بـ Nextcloud
بعد تعديل ملف Compose، أعد إنشاء الخدمة لتطبيق البيئة الجديدة:
docker compose up -d --force-recreate collabora
استخدم اسم الخدمة الصحيح. ثم تأكد من بدء تشغيل الحاوية بشكل سليم، وأن المضيف المتوقع يظهر في إعدادات بدء التشغيل أو سجلات النظام. تجنب لصق نسخ كاملة من بيئة التشغيل في طلبات الدعم، فقد تكشف كلمات المرور أو معلومات حساسة أخرى.
يحتوي Nextcloud على إعداد منفصل يُسمى "قائمة السماح لطلبات WOPI" ضمن إعدادات إدارة Office. تُقيّد هذه القائمة عناوين IP المسموح لها بإرسال طلبات WOPI إلى Nextcloud؛ وتوصي Collabora بتقييدها بعناوين خوادم Collabora المتوقعة. إذا أبلغ Nextcloud عن هذا التحذير، فأضف العنوان الذي يراه Nextcloud فعليًا للطلب، والذي قد يختلف عند استخدام خادم وكيل أو شبكة حاويات. يجب فصل هذا الفحص عن إدخال مضيف CODE: إذ يثق CODE بأسماء مضيفي التخزين، بينما تتعلق قائمة السماح في Nextcloud بعنوان IP للخادم المُرسِل للطلب.
إذا كنت تستخدم خادم وكيل عكسي، فتأكد من أن اسم المضيف الذي ينشره Nextcloud في روابط WOPI هو نفسه اسم المضيف الذي تم تكوين CODE للوثوق به. تحقق من عنوان URL لخادم Nextcloud Office وإعدادات المضيف العام للخادم الوكيل العكسي. لا تُضف اسم مضيف Office إلى قائمة السماح لتخزين WOPI إلا إذا كان هو بالفعل مضيف التخزين الموجود في عنوان URL الخاص بـ WOPI.
4. تحقق من اكتمال الاتصال
أولاً، تحقق من نقاط نهاية خدمة Collabora من متصفح ومن خادم Nextcloud. استبدل اسم المضيف المذكور في المثال بعنوان URL الخاص بمكتبك:
curl -fsS https://office.example.com/hosting/capabilities
curl -fsS https://office.example.com/hosting/discovery
تُثبت هذه الفحوصات استجابة نقاط النهاية، لكنها لا تُثبت الموافقة على طلب مستند WOPI. بعد ذلك، تحقق من إمكانية وصول CODE إلى Nextcloud باستخدام نفس المضيف الذي ينشر عليه Nextcloud، على سبيل المثال:
curl -fsS https://cloud.example.com/status.php
أخيرًا، افتح مستندًا تجريبيًا وراقب سجلات CODE وNextcloud في الوقت نفسه. إذا نجحت العملية، فسيتم تحميل المحرر، وستختفي رسالة "لا توجد مضيفات WOPI مقبولة"، وسيتم حفظ التغييرات البسيطة بنجاح. اختبر ذلك من حساب مستخدم عادي يتمتع بنفس صلاحيات المشاركة والتحرير الخاصة بالمستخدم المتأثر.
مقارنة الخيارات الرئيسية
مضيف واحد مطابق مقابل تعبير نمطي
يُعدّ استخدام اسم مضيف دقيق مع المنفذ المُستهدف الخيار الأمثل عادةً لنشر السحابة الواحدة، إذ يُسهّل مراجعته ويُقلّل من التطابقات غير المقصودة. يُمكن استخدام التعبير النمطي عندما تشترك مجموعة مُدارة بعناية من أسماء المضيفين في نمط مُحدد، لكن يصعب تدقيقه وقد يُتيح الوصول إلى نطاقات فرعية غير مقصودة إذا كُتب بشكل عام جدًا. لذا، استخدم التعبير الأضيق الذي يُلبي حاجة مُؤكدة.
مثيل واحد من الكود مقابل مثيلات منفصلة
تُقلل خدمة CODE المشتركة من عدد الخدمات التي تتطلب صيانة، ويمكن للمجموعات المُحددة دعم عدة نسخ من Nextcloud. قد تكون نسخ CODE المنفصلة خيارًا مناسبًا عندما تحتاج الفرق إلى عزل أقوى للإعدادات أو فترات صيانة مستقلة. لكن في المقابل، يتطلب الأمر بنية تحتية أكبر للتحديث والمراقبة والتوجيه. ولا يُصلح أي من الخيارين اسم مضيف WOPI غير المتطابق تلقائيًا؛ إذ يجب أن تثق كل نسخة بمضيف التخزين الصحيح.
إعدادات بيئة الحاويات مقابل تحرير ملفات XML
لنشر Docker CODE، استخدم واجهة التكوين التي تدعمها الصورة واحتفظ بها في Compose أو أي مصدر موثوق آخر للنشر. هذا يضمن إمكانية تكرار التغييرات عند إعادة إنشاء الحاوية. coolwsd.xmlقد يكون التعديل المباشر مفيدًا للحزم المُدارة أو عمليات النشر المخصصة، ولكن تعديل ملف مُنشأ داخل حاوية قيد التشغيل أمر غير مستقر وقد يختفي عند الاستبدال أو الترقية. اتبع التعليمات الخاصة بالحزمة أو مخطط Helm أو الصورة التي تستخدمها.
أخطاء شائعة يجب تجنبها
- السماح بذلك
office.example.comعندما يكون مضيف تخزين WOPI المرفوض هو cloud.example.com.
- إدخال اسم حاوية خاص عندما يحتوي عنوان URL الخاص بـ WOPI على اسم DNS عام، أو العكس.
- بافتراض أن قائمة عناوين IP المسموح بها في Nextcloud WOPI الفارغة وتكوين مضيف CODE هما نفس عنصر التحكم.
- إضافة رمز عام أو تعطيل التحقق من صحة المضيف لمجرد تحميل المحرر.
- تغيير قواعد الوكيل وTLS وWOPI في وقت واحد، مما يجعل تشخيص النتيجة أكثر صعوبة.
- اختبار نقطة النهاية الخاصة بالاكتشاف فقط واعتبارها دليلاً على أن عملية تفويض المستندات تعمل.
متى يتم استخدام حل مختلف
إذا تغير المضيف المرفوض بين الطلبات، فافحص عنوان URL الأساسي لـ Nextcloud، وعناوين الوكيل الموثوق، وأي مسارات ويب بديلة قبل إضافة المزيد من الأسماء. إذا تطابقت جميع أسماء المضيفين ولكن استمر الخطأ، فقارن تكوين CODE النشط مع ملف الإعدادات أو إعدادات البيئة التي عدّلتها، وتأكد من إعادة إنشاء الحاوية. بالنسبة إلى Kubernetes أو Helm، عدّل قيم المخطط أو مصدر التكوين المُدار بدلاً من وحدة pod مباشرة. إذا أظهرت السجلات أخطاءً في الشهادة أو جدار الحماية أو WebSocket أو DNS، فاستكشف أخطاء تلك الطبقة باستخدام سجلات الخادم المناسبة وفحوصات الشبكة.
تتبع هذه الخطوات دليل إدارة Nextcloud 35 المتاح بتاريخ 6 أكتوبر 2026، ومخطط تكوين WOPI المنشور من قبل Collabora. قد تختلف مفاتيح التكوين المحددة باختلاف طريقة النشر وإصدار الصورة، لذا يُرجى التحقق منها في وثائق الإصدار المُثبّت لديك قبل تطبيق أي تغيير.
المراجع الرسمية