تمكين CDN لمناقشك

So files will not synchronise with my system, cloudfront just cache them. Am i true?

3 إعجابات

Yes. That is correct. The CDN gets from your site just the assets that are requested of it.

Discourse will push to S3 static assets (like css and javascript) as well I uploads.

4 إعجابات

Is it possible to use cloudflare rules to cache static assets like css and javascript?

إعجابَين (2)

Yes, we use it that way and it works well. Just be very careful to disable any javascript optimizations. You can see our setup here:

4 إعجابات

Thanks for the response.

I have already added the second and third rule but I didn’t get the first rule. What’s the need for 301 redirect??

إعجابَين (2)

You don’t need it; it’s in the description.

3 إعجابات

Thanks for the response. What about the static assets like css and javascripts? Any rule possible for css and javascript??

إعجابَين (2)

I didn’t test that. I’m not sure that would work. At the very least you’d have to clear your Cloudflare cache after every rebuild.

إعجابَين (2)

It’s okay with me to clear the cache after every rebuild. What else would possibly go wrong if I make a rule to cache everything in https://myforum.com/assets/ ? Will this anyway affect user login? If you give a nod, I will test it for a week and report. I still have one unused rule.

إعجابَين (2)

Just to clarify, is it correct we do not use this field (as well as CDN URL) if we are using cloudflare CDN?

I have setup cloudflare.template in app.yml as per docs.

Is any further config needed if using cloudflare?

إعجاب واحد (1)

لقد استخدمت StackPath بنجاح كشبكة توصيل محتوى (CDN). يعمل كما هو متوقع!

إعجابَين (2)

هل ما زال هذا هو الحال في الوقت الحاضر؟

من عام 2019:

يبدو أنه يتعين علينا توخي الحذر الشديد وأننا نفقد بعضًا من فوائد Cloudflare.

من عام 2020:

من عام 2021:

إذًا، هل Cloudflare موثوق وفعال مع Discourse اليوم؟ هل تعطيل ميزة “Rocket Loader” يقلل من الفوائد؟

كنت أفكر في الانتقال من Stackpath إلى Bunny CDN، لكن مالك نطاق المنتدى الخاص بي والمسؤول السابق لديه حساب Cloudflare Enterprise (وهو مالك tinyURL بالمناسبة) يمكنه إضافة النطاق إليه مجانًا (Looking for a decrease in the forum fees in the future - #6 by Gilby - Forum Feedback - Unicyclist.com).

لذلك، أتساءل عما إذا كان من الصحيح وسهل وفعال استخدام Cloudflare بدلاً من Bunny CDN.

إعجابَين (2)

إذا كان لديك الكثير من الصور، فإن ما ستنفقه على زيادة مساحة SSD المتصلة مباشرة سيكون أغلى بكثير من التكاليف المكافئة لـ S3.

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

إعجابَين (2)

نحن لا نعتمد على الصور بكثافة. الهدف من شبكة توصيل المحتوى (CDN) هو تحميل الأصول بسرعة لكل مستخدم نظرًا لأن مجتمعنا دولي (بشكل أساسي الولايات المتحدة وأوروبا).

نحن نستخدم S3، ولكن فقط لتخزين النسخ الاحتياطية.

إعجاب واحد (1)

سؤال سريع. هل إعادة الخبز إلزامية بعد تغيير شبكة توصيل المحتوى (CDN) الخاصة بنا؟ أم أنها فقط إذا كان عنوان URL الخاص بشبكة توصيل المحتوى مختلفًا؟ أم أنها غير مطلوبة على الإطلاق؟


تعديل: أو هل من الممكن ببساطة استبدال عناوين URL القديمة في المنشورات المخبوزة بالجديدة باستخدام نص برمجي لـ Rails؟

على سبيل المثال، إذا كان لدي منشور يحتوي على:

<img class="ytp-thumbnail-image"
src="https://f5i4i8k5.stackpathcdn.com/uploads/default/original/3X/f/3/f3bc5ab19cc0394f33fd008e90ca06e081886a0b.jpeg"
title="Riding a unicycle part 76: Sullivan Canyon - Los Angeles"
width="480"
height="360"
loading="lazy"
style="aspect-ratio: 480 / 360;">

هل يمكنني إجراء بحث واستبدال للسلاسل النصية من f5i4i8k5.stackpathcdn.com إلى newcdn.unicyclist.com دون كسر أي شيء؟ يبدو الأمر آمنًا، لكنني أريد التأكد مما أفعله.

لا أمانع في إعادة خبز جميع منشوراتي، لكن المشكلة التي واجهتها في المرة الأولى هي أن لدي آلاف مقاطع الفيديو المضمنة على يوتيوب، وتم إدراج عنوان IP الخاص بي في القائمة السوداء بواسطة يوتيوب أثناء إعادة الخبز بسبب كثرة الطلبات إلى يوتيوب.

لذلك، إذا كان هناك بديل آمن لإعادة خبز جميع المنشورات ومواجهة نفس المشكلة المزعجة، فسأفضل الذهاب إلى البديل…

3 إعجابات

هناك مهمة معول (rake task) ستقوم بالاستبدال. أعتقد أن تشغيلها آمن وفكرة جيدة. استبدال سلسلة نصية في جميع المشاركات هو ما تبحث عنه، على ما أعتقد.

إعجابَين (2)

مرحباً جاي،

لست متأكداً من استخدام مهمة rake.
تبدو عناوين URL الخاصة بشبكة توصيل المحتوى (CDN) موجودة في حقول cooked بدلاً من حقول raw (إلا إذا تم إرسال الرسالة عبر البريد الإلكتروني).
على حد فهمي، يبحث post:remap عن السلسلة النصية في حقل raw فقط.

إذا كان استبدال عناوين URL الخاصة بشبكة توصيل المحتوى (CDN) في كل من حقلي raw و cooked آمناً، أعتقد أنه يجب عليّ استخدام نص برمجي مخصص لـ Rails؟

إعجابَين (2)

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

إعجابَين (2)

شكرا لك على هذه المعلومة!

أعتقد أنها هذه؟

DbHelper.remap('from', 'to')

تم العثور عليها في Rebaking old posts won't pull new S3 CDN URL after S3 bucket rename - #10 by Brad_Wood

وتم استخدامها هنا:

إذا كانت بديلاً آمنًا لإعادة الخبز عند تغيير خدمة CDN الخاصة بنا، فقد يكون دليل howto مفيدًا بالفعل.

3 إعجابات

يا له من خبر سار. شكراً لإعلامي. اعتقدت أن هذا سيكون كافياً لك للعثور عليه. سعيد لأنك حصلت عليه.

3 إعجابات