سؤال

هل هناك أي طريقة لتحديد أو فرض إعادة تخزين ملف CSS في ذاكرة التخزين المؤقت إذا كان المستخدم يعمل على ملف قديم؟

هل كانت مفيدة؟

المحلول

الطريقة الوحيدة الأضمن لضمان قيام الجميع بإعادة تحميل ملفك الجديد هي تغيير عنوان URL الخاص به.الطريقة المعقولة للقيام بذلك دون إعادة تسميتها فعليًا هي التعامل مع سلسلة عشوائية:

<link rel='stylesheet' href='/mystyles.css?random=87365835'>

وهذا يعني استخدام مطرقة ثقيلة لكسر الجوز، وتجاوز جميع آليات HTTP الموجودة للقيام بذلك، ولكنها ستعمل بالتأكيد في كل مكان، في حين أن جميع التقنيات الأخرى لها محاذير.

يحرر: @تقطع:لا يتعين عليك تغيير عنوان URL تلقائيًا لكل طلب - يمكنك أن تعتمده على الطابع الزمني لملف CSS، أو حتى مجرد تغييره يدويًا عندما تريد التأكد من إعادة تحميل CSS.

نصائح أخرى

ويمكنك محاولة تحرير etags الخادم: http://developer.yahoo.com/performance/rules.html#etags

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

وتحقق هذا الحل بدلا من استخدام xx.css؟ راند = 213213213

<وأ href = "https://stackoverflow.com/questions/118884/what-is-an-elegant-way-to-force-browsers-to-reload-cached-css-js-files/118886# 118886 "> ما هو وسيلة أنيقة لإجبار المتصفحات لإعادة تحميل مؤقتا CSS الملفات / JS؟

وأو Google ل "إصدارات السيارات" زائد إضافة جافا سكريبت أو المغلق. أو "الإصدارات الأصول التلقائي"

ويستخدم هذا النهج التلقائي الذي يغير مسار جزء URL لا بإلحاق الحصول على المتغيرات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top