أنا مدير جديد يحاول التكيّف مع نظام Discourse. قمتُ مؤخرًا بتفعيل ميزتي “تمكين تحميلات S3” و"تأمين الوسائط" في إصداري 2.6.0.beta4. يبدو أن كل شيء يعمل بشكل صحيح — حيث يمكنني تحميل الصور ويتم تقديمها من S3 مع رمز انتهاء صلاحية مرفق (كنت أتوقع أن تُقدَّم من عنوان URL على خادم Discourse الخاص بي، لكن يبدو أن هذا ينطبق فقط على التحميلات غير الصور).
أقول إنها تبدو وكأنها تعمل، لكنها لا تعمل بالضبط كما كانت عندما كنت أستخدم تخزينًا محليًا لتحميل الصور. على وجه الخصوص، لا يبدو أن وظيفة “التحسين” تعمل. أعتذر إذا كنت أستخدم مصطلحات غير صحيحة هنا، فأنا ما زلت أتعلم. لكن بشكل عام، قبل الترحيل إلى إعدادات S3/التأمين، كنت أرى سلوكًا يتم فيه استخدام وظيفة “lightbox”، حيث تُقدَّم صورة أصغر داخل إطار lightbox متجاوب، وكان بإمكانك اختيار رؤية الصورة الأصلية إذا رغبت في ذلك.
الآن، لا يبدو أن الصور المحسَّنة تُنشأ، باستثناء صور الرموز التعريفية (avatars). لكن عند إنشاء منشور جديد، عندما يقوم المستخدم بتحميل صورة، يتم حفظ الصورة فقط في /original/1x دون إنشاء صور محسَّنة مقابلة في /optimized/1x. وبالتالي، عند عرض المنشور، يتم تضمين الصورة الأصلية فقط دون أي تحسين.
هل هذا هو السلوك الصحيح عند التكوين بهذه الطريقة؟ لم أتمكن من العثور على منشور يتناول هذه النقطة مباشرة، ولم أرَ أي شخص آخر يشتكي من ذلك. أي معلومات يمكن أن يقدمها أحدكم ستكون مُقدَّرة جدًا.
أتساءل عما إذا كانت السؤال الذي طرحته من الأسئلة الشائعة أم أنني طرحته بطريقة غير واضحة. هل يمكن لأحد أن يكتشف أي مشاكل في ما أطلبه، أو إذا لم يكن واضحًا ما أحاول تحقيقه؟
سؤالك واضح، والبحث عن “صور وسائط آمنة محسّنة” في Meta لا يعيد أي نتائج مفيدة، لذا فهو ليس من الأسئلة الشائعة.
أنا لست متأكدًا من كيفية التعامل مع الصور المحسّنة عند تمكين إعداد “الوسائط الآمنة”. سنحتاج إلى انتظار رد من شخص لديه معرفة أكبر بكيفية عمل هذا الإعداد على النحو المتوقع.
شكرًا لك على الرد يا سيمون. أتساءل عن الخطوات التي يمكنني اتخاذها لمزيد من استكشاف الأخطاء وإصلاحها. أعتقد أنني قد أحتاج إلى تشغيل مثيل جديد وإجراء تثبيت جديد، ثم يمكنني تجربة الخيارات المختلفة ورؤية ما يحدث. في هذه المرحلة، لست متأكدًا حتى مما إذا كان الانتقال إلى تخزين S3 هو ما تسبب في المشكلة أو ما إذا كان تمكين الوسائط الآمنة هو السبب.
بالتأكيد يمكنني الاطلاع على الكود المصدري أيضًا، ولكن نظرًا لأنه مجموعة كاملة من التقنيات غير مألوفة بالنسبة لي، يبدو أن هذه العملية قد تستغرق وقتًا أطول.
نعم، قرأت تلك التحذيرات عند إعدادها. لكن الإعداد الفعلي بدا واضحًا جدًا وسار بسلاسة. هل هناك تعقيد أكبر في الإعداد مما هو مغطى في ذلك المستند؟
منتداي قيد التشغيل بالفعل ويبدو أن الأمور تسير على ما يرام باستثناء هذه النقطة، وأنا لست متأكدًا حتى مما إذا كان هذا مجرد كيف تعمل الأشياء عند تمكين الوسائط الآمنة.
إذا أردت زيادة معرفتي وفهم ذلك التعقيد الذي تتحدث عنه، هل يمكنك إرشادي إلى الاتجاه الصحيح؟ أنا جديد على discourse (و، حسنًا، تطبيقات Rails بشكل عام)، لكنني أملك خبرة واسعة في التطوير على الأنظمة القائمة على السحابة وصيانتها.
لقد جربت هذا للتو، ومع إعداد الوسائط الآمنة وما إلى ذلك، يعمل رفع الصور الكبيرة لدي بشكل صحيح، ويتم إنشاء 5 صور مُحسَّنة مع ضمان الأمان الصحيح. بالنظر إلى كيفية إنشاء هذه الصور، أتساءل عما إذا كانت إعدادات الموقع responsive_post_image_sizes أو create_thumbnails قد تم تغييرها؟
هل تظهر نافذة Lightbox عند رفع صورة كبيرة جدًا ويجب أن يتم تحسينها؟ يرجى ملاحظة أنه إذا كانت الصورة صغيرة جدًا، فلن يتم إنشاء صور مُحسَّنة لها.
كلا المعيارين responsive_post_image_sizes و create_thumbnails مضبوطين على القيم الافتراضية ([1, 1.5, 2] و true على التوالي).
لقد قمت برفع هذه الصورة بدقة 7680×4320، وأستطيع أن أرى أن النسخة الأصلية مخزنة بشكل صحيح في مجلد s3 /orginal/1x، كما توجد نسخة محسّنة مخزنة في /optimized/1x بدقة 1024×576. هذا مطمئن؛ فسبق لي أن ذكرت أن الصور لم تُنشأ في /optimized/1x، ويبدو أن ذلك غير صحيح.
ومع ذلك، عندما أفحص المنشور سواء على جهاز كمبيوتر أو هاتف محمول، سواء عبر متصفح Chrome أو Firefox، ألاحظ أن الصورة من /original/1x هي المضمنة في المنشور. إليك فحصًا لتلك الصورة: