الرئيسية
» كيف
»
قم بإصلاح فحص مضيف WOPI الخاص بـ CODE عن طريق مطابقة أصل المضيف
قم بإصلاح فحص مضيف WOPI الخاص بـ CODE عن طريق مطابقة أصل المضيف
عندما يُبلغ Collabora Online CODE عن "مضيف WOPI غير مصرح به"، أضف مضيف تخزين الملفات الفعلي - عادةً ما يكون مصدر Nextcloud الخاص بك - إلى قائمة مضيفي WOPI المسموح بها في CODE. يجب أن يتطابق المضيف مع المصدر الذي يستقبله CODE في طلب WOPI، وليس عنوان URL العام لخادم Collabora. في Docker، يتم عادةً تكوين ذلك باستخدام aliasgroup1متغير البيئة.
يشير هذا التحذير إلى عملية التحقق من صلاحية مضيف WOPI التي فشلت.
ما هو الكود الذي يرفضه؟
WOPI اختصار لـ Web Application Open Platform Interface، وهو البروتوكول الذي يستخدمه خادم المكتب لفتح الملفات وحفظها عبر منصة تخزين. مضيف WOPI هو منصة التخزين هذه، مثل Nextcloud. يتحقق CODE من المضيف المذكور في طلب WOPI مقابل المضيفين الموثوق بهم. إذا كان اسم المضيف في الطلب مطابقًا، cloud.example.comولكن CODE مُهيأ للوثوق بمضيف واحد فقط office.example.com، فيمكن للمحرر رفض الجلسة قبل فتحها.
في حالة الاستضافة الذاتية، قد يكون اسم المضيف في الطلب اسمًا داخليًا لـ Docker، مثل `docker-component-name`، nextcloudبدلاً من اسم المضيف الظاهر للمتصفح. كما يمكن أن يؤدي استخدام خادم وكيل عكسي، أو منفذ مختلف، أو عناوين URL منفصلة (عامة وداخلية) إلى اختلاف المصدر. لذا، اضبط ما يستخدمه الطلب فعليًا، وليس ما يبدو أنه اسم الخادم "الرئيسي".
ابحث عن المضيف الذي يرفض رمز الاستجابة السريعة
أعد إنتاج الخطأ مرة واحدة، ثم افحص سجل حاوية CODE في ذلك الوقت تقريبًا. باستخدام Docker Compose، شغّل الأمر التالي docker compose logs --since=10m collabora، collaboraمع استبدال باسم خدمتك.
ابحث عن رسالة مثل هذه No acceptable WOPI hosts found matching the target host [cloud.example.com] in config. سجّل اسم المضيف المستهدف الموضح بين قوسين. لا تنسخ أو تشارك عنوان URL كاملاً لـ WOPI: فقد يحتوي على رمز وصول قصير الأجل.
قارن اسم المضيف والبروتوكول مع عنوان URL الذي يُعلنه تكامل التخزين الخاص بك لـ CODE. في Nextcloud، توصي إرشادات استكشاف الأخطاء وإصلاحها بالتحقق من أن عنوان URL المُكوّن هو عنوان Nextcloud وأن CODE قادر على الوصول إليه. تحقق من WOPISrcالمضيف، إن كان مُتاحًا في سجلات التكامل، مع الحرص على إبقاء رمز سلسلة الاستعلام خاصًا.
يمثل المضيف المستهدف بين قوسين القيمة المراد مقارنتها بمضيفي WOPI المُكوّنين بواسطة CODE؛ وهذا نمط سجل توضيحي.
السماح بالأصل الصحيح في الكود
بالنسبة لصورة Docker الرسمية لـ CODE، اضبطها aliasgroup1على مصدر WOPI الموثوق به تمامًا. بالنسبة لتثبيت Nextcloud واحد، يمكن أن تتضمن خدمة Compose ما يلي:
استبدل المثال بمضيف Nextcloud الحقيقي الخاص بك، بالإضافة إلى البروتوكول والمنفذ اللذين يستخدمهما طلب WOPI. احتفظ بعلامة الصورة الحالية، وإعدادات المسؤول، والشبكة، وخيارات الخدمة الأخرى في ملف Compose. يستخدم المثال مصدر HTTPS مع المنفذ 443؛ قد يستخدم نشر مختلف منفذًا آخر أو مصدرًا داخليًا.
بالنسبة لأصل Nextcloud واحد، يجب أن يتطابق اسم Docker المستعار 1 الخاص بـ CODE مع المضيف المستخدم في طلب WOPI.
بعد تعديل ملف Compose، أعد إنشاء حاوية CODE بحيث تتلقى البيئة المحدثة:
docker compose up -d --force-recreate collabora
استخدم اسم خدمة Compose الفعلي بدلاً من الاسم الافتراضي collabora. قد لا يؤدي إعادة التشغيل العادية إلى تحميل قيم بيئة الحاوية المُعدّلة؛ storage.wopiلذا فإن إعادة إنشاء الخدمة تُطبّق التكوين المُحدّث. إذا قمتَ بتكوين CODE من خلال ملف XML الخاص به، فتحقق من مجموعات الأسماء المستعارة في التكوين الفعلي. يُوثّق دليل Collabora SDK الرسمي مجموعات أسماء Docker المستعارة وأسماء مضيف WOPI المستعارة؛ اتبع الصيغة المُناسبة لإصدار CODE الذي تستخدمه.
احتفظ بقائمتي السماح منفصلتين
يمكن لكل من Collabora و Nextcloud فرض قيود متعلقة بـ WOPI، لكنهما يجيبان على أسئلة مختلفة:
الإعداد
ما الذي يتحقق منه
تصحيح نموذجي
قائمة السماح لمضيفي CODE WOPI ( aliasgroup1)
ما اسم مضيف التخزين الذي يقبله CODE في طلب WOPI؟
السماح بإرسال مصدر Nextcloud الفعلي إلى CODE
Nextcloud "قائمة السماح لطلبات WOPI"
ما هي عناوين IP المصدر التي قد ترسل طلبات WOPI إلى Nextcloud؟
السماح بالعنوان الذي يراه Nextcloud لحاوية CODE أو الخادم الوكيل
هذا الإعداد المنفصل في Nextcloud يقيد عناوين المصدر المسموح لها بإرسال طلبات WOPI؛ إنها ليست قائمة CODE لأسماء مضيفي WOPI الموثوقة.
لن يؤدي تغيير قائمة عناوين IP المصدر المسموح بها في Nextcloud إلى حل مشكلة رفض CODE لاسم المضيف. وبالمثل، فإن إضافة اسم مضيف إلى CODE لا يُخوّل عنوان IP المصدر الخاص بـ CODE في Nextcloud. توصي وثائق Nextcloud بتقييد طلبات WOPI بعناوين IP الخاصة بخادم Collabora؛ استخدم العنوان الذي رصده Nextcloud، والذي قد يختلف عند استخدام الحاويات أو خادم وكيل عكسي.
إجراء فحوصات سريعة قبل إغلاق البلاغ
يقول Target cloud.example.com: اسمح لمضيف Nextcloud هذا والأصل المناسب في CODE.
يقول الهدف nextcloud: من المحتمل أن يتلقى CODE اسم مضيف شبكة Docker؛ قرر ما إذا كان هذا الأصل الداخلي مقصودًا، ثم قم بتكوين المضيف الموثوق به المقابل وتأكد من إمكانية الوصول إلى DNS/الشبكة.
يتطابق الهدف، ولكن يبقى نفس الرفض قائماً: تأكد من أن المتغير الذي تم تعديله ينتمي إلى خدمة CODE قيد التشغيل، وأن Compose أعاد إنشاء الحاوية، وأنه لا توجد بيئة لاحقة أو تكوين XML يتجاوز الإعداد.
قد تتغير سجلات النظام إلى خطأ في نظام أسماء النطاقات (DNS) أو بروتوكول أمان طبقة النقل (TLS) أو انتهاء المهلة أو فشل في التحقق من معلومات الملف: قد يكون فحص ترخيص المضيف قد اجتاز بنجاح الآن. بدلاً من توسيع قائمة مضيفي WOPI، تحقق من تحليل الاسم، أو موثوقية الشهادة، أو التوجيه، أو استجابة معلومات الملف الخاصة بتكامل التخزين.
يُبلغ Nextcloud عن عنوان طلب غير مصرح به: راجع قائمة عناوين IP المصدر المسموح بها في Nextcloud وعنوان IP الخاص بالعميل الذي يراه فعليًا.
لا تعالج مشكلة عدم التوافق بالوثوق بكل مضيف أو باستخدام أحرف بدل غير مقيدة في بيئة الإنتاج. اجعل قائمة السماح محصورة بمصادر التخزين المعروفة. إذا كان استخدام عدة مضيفات تخزين مقصودًا، فقم بتكوين مجموعات الأسماء المستعارة الموثقة لإصدار CODE المثبت لديك بدلًا من التخمين بشأن سلوك أحرف البدل.
تحقق من الإصلاح
افتح مستندًا من خلال نفس تكامل Nextcloud الذي فشل. ثم تحقق من سجلات CODE الجديدة: يجب أن يختفي خطأ "لا توجد مضيفات WOPI مقبولة". تأكد من تحميل المستند وإمكانية حفظه؛ إذا ظهر خطأ جديد، فاستخدم رسالته لتحديد الخطوة التالية. للاطلاع على فحصي المضيفين وخطوات استكشاف أخطاء Nextcloud وإصلاحها، راجع قسمي استكشاف أخطاء Nextcloud Office وإصلاحها وتكوين Nextcloud Office . بالنسبة لمجموعات أسماء Docker المستعارة في CODE، راجع دليل Collabora Online SDK 25.04 ؛ استخدم الوثائق المطابقة لإصدارك المُثبّت إذا كان تكوينه مختلفًا.