ما الذي يسبب حقل طلب طلب ما لا يتجاوز المباراة الضخمة؟
-
30-09-2019 - |
سؤال
لدي مشكلة في رأس IF-Match الذي يتم إرساله إلى تطبيق Django CMS ، الذي يمر عبر Apache2/mod_wsgi.
عند تحرير الصفحة الأكثر استخدامًا ، تحصل متصفحات المستخدمين المختلفة (Chrome و FF) على خطأ من Apache تشكو من أن حقل ما لا يتجاوز المباراة لا يزال طويلًا جدًا.
عند التفتيش (من خلال wireshark) يرسل المتصفح حوالي 8kib إذا كانت etags في خط الرأس هذا. إن مسح ذاكرة التخزين المؤقت للمتصفح أو إعادة التشغيل لا يزيل المشكلة.
لست متأكدًا مما هو مخطئ هنا.
هو التفسير الصحيح لقيم الحقل على النحو التالي:
يزعم المتصفح أنه يعرف بضع مئات من الإصدارات السابقة من الصفحة (وهو موثوق به ، حيث أن الخطأ يحدث فقط على صفحات متغيرة بسرعة).
هل هناك طريقة لتطهير etags من FF أو Chrome؟
شكرًا،
كريس.
المحلول
قد يكون من الأفضل لك منع Django من توليد etags في المقام الأول. نظرًا لأن Django لا ينشئهم إلا بعد تقديم صفحة ، فإنهم لا يوفرون لك موارد الخادم-فقط عرض النطاق الترددي. إذا لم يكن عنق الزجاجة عرض النطاق الترددي ، فيمكنك تعطيلها فقط عن طريق الإعداد USE_ETAGS = False
في ملف الإعدادات.
التفاصيل هنا: http://docs.djangoproject.com/en/1.2/ref/settings/#std:setting-use_etags