IE6 والتخزين المؤقت
-
09-06-2019 - |
سؤال
يبدو أن IE6 يتجاهل أي شكل من أشكال إبطال ذاكرة التخزين المؤقت التي يتم إرسالها عبر رؤوس http، لقد حاولت تعيين Pragma على No Cache وتعيين Cache Expiration على الوقت الحالي، ولكن في IE6، سيؤدي الرد دائمًا إلى سحب نسخة مخبأة من الصفحة التي أقوم بها. أعمل على.
هل يوجد رأس HTTP محدد يستمع إليه IE6 أيضًا؟
المحلول
Cache-Control: private, max-age=0
ينبغي إصلاحه.من ASP الكلاسيكي يتم ذلك باستخدام Response.Expires=-1
.
ضع في اعتبارك عند الاختبار أن مجرد قيام الخادم الخاص بك بعرض صفحات مع إيقاف تشغيل التخزين المؤقت لا يعني أن المتصفح سيلتزم بذلك عندما يكون لديه صفحة قديمة مخبأة تم إخباره أنه من الممكن تخزينها مؤقتًا.امسح ذاكرة التخزين المؤقت أو استخدم F5 لفرض إعادة تحميل تلك الصفحة.
وأيضًا، بالنسبة لتلك الحالات التي يقدم فيها الخادم محتوى مخبأ، يمكنك استخدامه السيطرة+F5 للإشارة إلى الخادم بعدم خدمته من ذاكرة التخزين المؤقت.
نصائح أخرى
يجب أن تكون حذرا.إذا كنت تستخدم AJAX عبر XMLHttpRequest (XHR)، فإن "توصيات" ذاكرة التخزين المؤقت المعينة في الرأس لا تحترم بواسطة ie6.
الإصلاح هو استخدام إلحاق رقم عشوائي باستعلامات URL المستخدمة في طلبات AJAX.على سبيل المثال:
http://test.com?nonce=0123
المولد الجيد لهذا هو وظيفة UTC () التي ترجع إطارًا زمنيًا فريدًا لمتصفح المستخدم ...أي ما لم يعبثوا بساعة النظام الخاصة بهم.
هل حاولت تعيين ETag في الرأس؟إنها طريقة موثوقة جدًا للإشارة إلى أن المحتوى قد تغير مواصفات W3C & ويكيبيديا
علاوة على ذلك، هناك طريقة أكثر بدائية تتمثل في إلحاق معلمة سلسلة استعلام عشوائية بالطلب، مثل الطابع الزمني لنظام التشغيل Unix الحالي.كما قلت، الخام، ولكن بعد ذلك IE6 ليس أدق الوحوش
ملاحظة صغيرة:من خلال الخبرة أعلم أن IE6 سيقوم بتحميل Javascript من ذاكرة التخزين المؤقت حتى لو اضطر إلى إعادة تحميل الصفحة عبر ctrl-f5.لذا، إذا كنت تعمل على Javascript، قم دائمًا بإفراغ ذاكرة التخزين المؤقت.
يمكن أن يساعد شريط أدوات مطور الويب IE بشكل كبير في هذا الأمر.هناك زر لمسح ذاكرة التخزين المؤقت.
يرى سؤال:التأكد من عدم تخزين صفحة الويب مؤقتًا عبر جميع المتصفحات. كيفية التحكم في التخزين المؤقت لصفحة الويب عبر جميع المتصفحات؟ أعتقد أن هذا يجب أن يساعد في حل مشكلتك أيضًا.
المحتوى مع "ترميز المحتوى:gzip" يتم تخزينه مؤقتًا دائمًا على الرغم من استخدامك "التحكم في ذاكرة التخزين المؤقت:بلا ذاكرة تخزين مؤقت"
http://support.microsoft.com/kb/321722
يمكنك أيضًا تعطيل gzip لـ IE6 فقط