الآن بعد الاستعادة (كان المفتاح هو تعطيل تحميلات S3)، فإن جميع الروابط للمرفقات في المشاركات معطلة (خطأ 404). لقد بحثت في المنتدى ولم أجد حلاً وآمل أن يشيرني شخص ما في الاتجاه الصحيح.
لدي خياران:
هل يمكنني إصلاح هذه الروابط short-url المعطلة التي تشير إلى المرفقات المضمنة في المشاركات (جميع الروابط المعطلة هي للمرفقات في المشاركات؛ الصور المضمنة تُعرض بشكل جيد، والروابط الداخلية الأخرى تعمل بشكل جيد)؟
على سبيل المثال، يظهر رابط المرفق في مشاركة على المنتدى على النحو التالي: https://XYZ.com/uploads/short-url/phu1HOLvkE8LWpkKYfnMPSWsvHh.zip. هذا ما أراه في السجلات عند النقر على رابط مرفق في مشاركة (مما يؤدي إلى 404).
رسالة (تم الإبلاغ عن 5 نسخ)
فشل في معالجة الاستجابة المختطفة بشكل صحيح: Errno::ENOENT : لا يوجد مثل هذا الملف أو الدليل @ rb_sysopen - /XXXXX.s3.dualstack.us-east-1.amazonaws.com/optimized/1X/46728e07f9819907d1b18387bf02ea7fc25c7981_2_32x32.ico
تتبع الأخطاء
/var/www/discourse/app/controllers/static_controller.rb:160:in read' /var/www/discourse/app/controllers/static_controller.rb:160:in block (2 levels) in favicon’
/var/www/discourse/lib/distributed_memoizer.rb:16:in block in memoize' /var/www/discourse/lib/distributed_mutex.rb:33:in block in synchronize’
/var/www/discourse/lib/distributed_mutex.rb:29:in synchronize' /var/www/discourse/lib/distributed_mutex.rb:29:in synchronize’
/var/www/discourse/lib/distributed_mutex.rb:14:in synchronize' /var/www/discourse/lib/distributed_memoizer.rb:12:in memoize’
/var/www/discourse/app/controllers/static_controller.rb:138:in block in favicon' /var/www/discourse/lib/hijack.rb:56:in instance_eval’
آمل حقًا أن تكون هناك طريقة لإصلاح روابط short-url هذه بعد تعطيل خيار تحميل S3 أثناء استعادة الخادم من نسخة احتياطية. لم يؤدِ إعادة خبز المشاركات إلى إصلاحها.
إذا كان هذا الطريق مسدودًا لسبب ما ولا يمكن إصلاحه بشكل جماعي، الآن لدي آلاف المرفقات اليتيمة على سحابة S3، هل هناك طريقة لتنظيفها وتحرير المساحة؟ هل هناك طريقة يمكن لـ Discourse من خلالها المرور عبر سلة تحميل S3 الخاصة بها ومسح جميع الأصول اليتيمة؟
تحقق مما إذا كان لديك ملف يسمى b13050bdcd2d58924ba6ab3e7608b16bfc3cd1b7.zip في مكان ما في ملفات التحميل الخاصة بك و/أو في دلو S3 الخاص بك. إذا كان الأمر كذلك، فيجب أن يكون من الممكن، وإن لم يكن سهلاً، إصلاح الأمور.
نظرًا لأنك لم تقم بتضمين أسماء المنتديات أو الدلاء الفعلية، فلا يمكننا معرفة ذلك هنا.
أعتقد ذلك، ولكن أعتقد أن شخصًا على دراية بـ discourse و rails سيحتاج إلى كتابتها. لست على علم بوجود حل لمشكلتك. هناك عدد قليل من المواضيع حول الانتقال بين S3 buckets قد تقدم بعض الأدلة، لكنني لا أعتقد أن مشكلتك المحددة قد تم حلها من قبل.
حسنًا، نعم، هذا ما أوصيتك بفعله في المقام الأول…
إذا لم تقم بإعادة تمكين تحميلات S3، فستبحث وظيفة short-url عن تلك التحميلات محليًا، ولكنها موجودة على S3.
سأجرب ذلك ولكن من ناحية أخرى عندما قمت بتمكينه فقد أفسد الاستعادة (انظر موضوعي الآخر). بمساعدة جاي، اضطررت إلى معرفة كيفية تعطيل التحميل لاستعادته في النهاية. هل تمكنت من استعادة خادم بنجاح مع تمكين الخيار؟