تكوين موفر تخزين كائنات متوافق مع S3 للتحميلات

هل استخدم أحد SeaweedFS؟ مع عدم اليقين بشأن MinIO، كنت أبحث في هذا الخيار وسأجربه لمعرفة ما إذا كانت هناك أي مشكلات توافق مع Discourse.

لقد جعلت R2 يعمل بشكل صحيح باستخدام مجموعة القواعد هذه:

  ## تسمح مجموعة الأسطر هذه بتحميل وتنزيل الملفات المستضافة على R2 S3..
  DISCOURSE_USE_S3: true
  DISCOURSE_S3_REGION: auto
  DISCOURSE_S3_ACCESS_KEY_ID: access-key-id
  DISCOURSE_S3_SECRET_ACCESS_KEY: access-key
  DISCOURSE_S3_CDN_URL: https://eufiles.technospider.com
  DISCOURSE_S3_BUCKET: exotics-unlimited
  DISCOURSE_S3_BACKUP_BUCKET: exotics-unlimited-backups
  DISCOURSE_BACKUP_LOCATION: s3
#  DISCOURSE_CDN_URL: https://eufiles.technospider.com
  DISCOURSE_S3_ENDPOINT: https://71*****5d4976.r2.cloudflarestorage.com
#  DISCOURSE_INCLUDE_S3_UPLOADS_IN_BACKUPS: true
  DISCOURSE_S3_INSTALL_CORS_RULE: false

بمجرد أن علقت السطر CDN_URL، سارت الأمور على ما يرام. أعتقد أنه بحكم طبيعة أن R2 ينشئ شبكة توصيل المحتوى (CDN) تلقائيًا، فإنك لا تحتاج إلى هذا السطر، بل إن إضافته تتسبب في حدوث مشاكل.
لقد علقت السطر الخاص بتضمين الصور فقط للحفاظ على أحجام النسخ الاحتياطية لدي منخفضة. أنا أستخدم الطبقة المجانية في R2 ولا أريد تجاوز الحد المسموح به لي.

صحيح. لا تريد حقًا استخدام DISCOURSE_INCLUDE_S3_UPLOADS_IN_BACKUPS إلا إذا كنت تنتقل بعيدًا عن S3. لا معنى لتنزيل جميع الصور من S3 لتضمينها في نسخة احتياطية مخزنة . . . على S3. تركت هذا الخيار ممكّنًا مرة واحدة على دلو AWS وكان لدي فاتورة كبيرة لتنزيل كل صورة كل يوم.

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

هل تقصد إذا كنت تستخدم شركتين مختلفتين؟ واحدة للحاوية والأخرى لشبكة CDN؟ أنا لست ملمًا بهذا جيدًا، لذا أحتاج إلى المعلومات كما لو كنت طفلاً في الثالث الابتدائي…
أنا أعلم أنه عندما تنشئ “نطاقًا مخصصًا” في واجهة R2، فإنه يعمل كشبكة CDN، ولهذا السبب حاولت في البداية إضافة هذا السطر.

على أي حال، لقد كان يعمل بشكل مثالي لموقع الاختبار الخاص بي وما لم يكن هناك شيء آخر من المفترض أن يفعله ولا يفعله، سأوصي بتحديث المنشور الأصلي لإظهار أن Cloudflare يعمل الآن مع Discourse.

لا. لا يمكنك فعل ذلك. هناك مفتاح/سر S3 واحد فقط. كنت أحاول اختلاق سبب لاستخدام تضمين عمليات تحميل S3، ولكن لا يوجد سبب.

[quote=“tknospdr, post:499, topic:148916”]
أعلم أنه عندما تنشئ “نطاقًا مخصصًا” في واجهة R2 فإنه يعمل كشبكة توصيل محتوى (CDN) ولهذا السبب حاولت في البداية إضافة هذا السطر.
[/quote] هذا لحاوية S3 وليس لموقعك. هناك متغيران مختلفان DISCOURSE_S3_CDN_URL و DISCOURSE_CDN_URL. أنت تعاملهما كما لو كانا متماثلين. لا يمكنك استخدام شبكة توصيل محتوى (CDN) للموقع، ولكن السبب في عدم عمله عند تعيين هذا المتغير هو أنك أعطيته شبكة توصيل محتوى (CDN) خاطئة.

حسنًا، اعتقدت أن لدي فهمًا بسيطًا لما كنت أفعله، ولكن الآن أعتقد أنني تائه تمامًا.

إذًا ما الفرق بين S3 CDN و CDN؟

هل سيظل الأمر يعمل إذا عكست أيهما من الاثنين قمت بالتعليق عليه؟

لاحظت مشكلة غريبة مع صورة الخلفية لشعار الترحيب الخاص بي أيضًا، هل يرتبط ذلك بأي من هذا؟