إيموجي مخصصة محملة من S3/R2 تتجاوز توجيه CDN

واو، كانت هذه رحلة حقيقية. لقد أعدتُ تكوين نظام تخزين الكائنات Cloudfare R2 ووحدة Discourse بالكامل تقريبًا، وأعتقد أن هذا الخلل حقيقي فيما يتعلق بـ R2. عندما أصلحت سجل DNS الخاص بـ Cloudflare وأعددت بناء الوحدة بحيث يشير DISCOURSE_CDN_URL إليه فعليًا، تسبب ذلك في تعطيل العديد من الأشياء الأخرى مثل سلاسل الترجمة، وأدى إلى ظهور أخطاء متعددة في وحدة التحكم، بما في ذلك بعض أخطاء CORS. لقد قادني ذلك إلى العديد من المتاهات اليوم. لذا يبدو أن استخدام DISCOURSE_CDN_URL غير متوافق مع Cloudflare R2. (كان هذا غريبًا جدًا - عندما قمت بإعداد إدخال DNS الأصلي في البداية، أدخلت سجل DNS لـ cdn.mysite.com بشكل خاطئ بحيث كان يحل إلى cdn.mysite.com.mysite.com). يبدو أن ضبط DISCOURSE_CDN_URL بشكل صحيح غير متوافق مع نظام تخزين الكائنات Cloudflare R2. قد يكون هناك أمور أخرى لا أفهمها بالكامل هنا.

على أي حال، عندما أعيد البناء باستخدام فرع طلب السحب (PR) الخاص بي، يتم إصلاح كل شيء لأنه يلف عملية التعيين داخل Discourse.store.cdn_url() بحيث تتبع عمليات رفع الرموز التعبيرية المخصصة نفس منطق التوجيه والنسخ الاحتياطي لـ S3 CDN كما تفعل عمليات رفع صور المنشورات القياسية.

أعدتُ فتح طلب السحب وقمت بتعديل الوصف. ولكن يبدو أنه إذا قرر فريق Discourse عدم دمجه، فلا بأس بذلك لأن مكون السمة يحل المشكلة على مستوى العميل. لاحظ أن إصلاح طلب السحب يجب أن يؤثر فقط على تكوينات تخزين الكائنات R2 للرموز التعبيرية المخصصة، وليس على خدمات S3 المتوافقة الأخرى مثل AWS.

إعجابَين (2)