[Ruby-On-Rails] كيفية منع التخزين المؤقت لصفحة المتصفح في القضبان



Question

Ubuntu -> Apache -> Phusion Passenger -> Rails 2.3

الجزء الرئيسي من موقعي يتفاعل مع نقراتك. لذلك ، إذا نقرت على رابط ، فسيتم إرسالك إلى الوجهة ، وإعادة تجديد صفحتك على الفور.

ولكن إذا ضغطت على زر الرجوع ، فلن ترى الصفحة الجديدة. لسوء الحظ ، لا يظهر بدون تحديث يدوي ؛ يبدو أن المتصفح يقوم بالتخزين المؤقت له. أريد التأكد من عدم تخزين المتصفح للصفحة.

بشكل منفصل ، أرغب في تعيين تواريخ انتهاء الصلاحية في المستقبل البعيد لكافة الأصول الثابتة الخاصة بي.

ما هي أفضل طريقة لحل هذا؟ يجب أن حل هذا في القضبان؟ أباتشي؟ جافا سكريبت؟

شكرا على كل مساعدة ، جايسون

واحسرتاه. لم يجبر أي من هذه الاقتراحات على السلوك الذي أبحث عنه.

ربما هناك جواب جافا سكريبت؟ كان بإمكاني الحصول على سكك كتابة طابع زمني في تعليق ، ثم مراجعة جافا سكريبت لمعرفة ما إذا كانت الأزمنة في غضون خمس ثوانٍ (أو أي شيء يعمل). إذا كانت الإجابة بنعم ، فلا بأس ، ولكن إذا لم يكن الأمر كذلك ، فأعد تحميل الصفحة؟

هل تعتقد أن هذا من شأنه أن يعمل؟

شكرا لجميع التعليمات الخاصة بك،

جايسون




قد تكون الطريقة الأنظف هي كتابة وسيط Rack ، والذي يغير رأس Cache-Control استنادًا إلى بعض المنطق (على سبيل المثال ، فقط لنوع mime application / xml). أو ، من أجل نهج أكثر قبيحة ، ولكن لا يزال يعمل ، يمكن للمرء تغيير ثابت ActionDispatch :: Response :: DEFAULT_CACHE_CONTROL إلى 'no-cache'. بالطبع ، إذا كانت وحدة التحكم و / أو دقة العمل مطلوبة ، فمن الأفضل القيام بذلك في وحدة التحكم.




Links