سؤال

لديّ تطبيق Joomla يعمل على Apache. لتحسين أداء الموقع ، لقد كتبنا ملف .htaccess لجذر التطبيق مع تعيين رأس انتهاء صلاحية مستقبل بعيد لجميع المحتوى الثابت. حسب الرغبة في المرة الأولى ، يتم تحميل الملفات في فريش مع 200 رمز الحالة. عندما انقر مرة أخرى على الرابط نفسه يتم تقديم العديد من الملفات مباشرة من ذاكرة التخزين المؤقت. أحتاج إلى شرح لأمرين

  1. عندما أضغط على F5 ثم يتم تحميل عدد من الملفات باستخدام رمز الحالة 304 ، لكنني كنت أتوقع أن يأتي مباشرة من ذاكرة التخزين المؤقت دون ضرب الخادم لرأس الحالة؟

  2. عندما أغلق المتصفح وأعود إلى نفس الصفحة مرة أخرى ، أرى نفس الشيء يحدث عددًا من الملفات مع رمز الحالة 304 على الرغم من أنني اعتقدت أنها ستتحمل مباشرة من ذاكرة التخزين المؤقت للمتصفح؟

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

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

المحلول

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

ما تريد القيام به لاختبار هذا هو وضع المؤشر الخاص بك في شريط العناوين (Alt-D على الفوز) وضرب Enter. هذا يشبه إعادة صياغة الصفحة ويجب أن يتصرف المتصفح كما تتوقع.

نصائح أخرى

قد يؤدي استخدام جلسة آمنة بالفعل إلى وجود مشكلة في التخزين المؤقت.

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

لدى Firefox خيار التكوين للتحكم في هذا. لا أعرف عن IE. من الممكن أيضًا أن يكون هناك بعض رأس التحكم في ذاكرة التخزين المؤقت الذي سيتجاوز هذا السلوك.

أعتقد أن رأس التحكم في ذاكرة التخزين المؤقت هو HTTP/1.1 ويجب عليك استخدامه وكذلك انتهاء صلاحيته. يوفر التحكم في ذاكرة التخزين المؤقت المزيد من الميزات للتحكم في ذاكرة التخزين المؤقت.

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