ماذا يعني Vary: * لذاكرة وسيطة مشتركة
افهم لماذا لا يمكن لاستجابة مخزّنة تحمل Vary: * أن تطابق طلبًا لاحقًا عبر اختيار الذاكرة المشتركة العادي.
الاستجابة المخزّنة التي تحمل Vary: * تفشل دائمًا في اختبار مطابقة Vary العادي. لا يمكن للوسيط أن يستنتج أن طلبًا لاحقًا يستحق التمثيل نفسه لمجرد أن عنوان URL ورؤوسه الظاهرة تبدو متشابهة.
قارن ذلك بما يلي:
Vary: Accept-Encoding
يسمّي هذا حقل طلب تستطيع الذاكرة مقارنته. وتقول علامة النجمة إن هذا النوع من مقارنة الرؤوس غير كافٍ. وزيادة الحداثة أو حجم الذاكرة لا توفّر معلومات الاختيار الناقصة.
الفرق بين التخزين وإعادة الاستخدام. يمكن للذاكرة الاحتفاظ بمعلومات مفيدة للتحقق، لكن النسخة المخزّنة ذات العلامة العامة لا تصبح استجابة مطابقة عادية يمكنها تلبية الطلب التالي. وعادةً يحتاج الوسيط إلى الاتصال بالمصدر بدلًا من ذلك.
اجعل سياسة الاستجابة تصف التطبيق
إذا كنت تتحكم في المصدر وكان التمثيل يتغيّر فعلًا فقط بحسب رؤوس طلب قابلة للتحديد، فسمِّ تلك الحقول بدقة. لا تستبدل العلامة العامة بـAccept-Encoding لمجرد أن ذلك المثال قابل للتخزين: فقد يتغيّر التطبيق أيضًا بحسب اللغة أو التفويض أو معلومات خارج تلك الرؤوس.
إذا كان المحتوى خاصًا أو لا ينبغي تخزينه، فعبّر عن ذلك عبر سياسة الذاكرة المناسبة. وإزالة Vary لا تجعل المحتوى المخصّص آمنًا للمشاركة.
يتعلق vary_ignore_expire في Squid بمعالجة انتهاء الصلاحية للاستجابات المتباينة وبسلوك HTTP التاريخي. وهو ليس مفتاحًا يجعل العلامة العامة تطابق.