मुझे साइट और सीएसआरएफ के साथ थोड़ा पागल/क्रूर बग मिला है।सीएसआरएफ विफलता के कारण इंटरमीटेंट 403s (Django 1.2.3)
हम Django 1.2.3, Python 2.6 Ubuntu पर Apache2 + mod_wsgi के साथ चल रहे हैं और परिणामस्वरूप 403 सीआरएसएफ सत्यापन विफलताओं और 403s की रिपोर्ट करने वाले अंतिम उपयोगकर्ता प्राप्त कर रहे हैं।
हमारे सभी रूपों में csrf_token
है और - जहां तक मुझे पता है - चीजें स्थानीय देव और मंच पर ठीक काम करती हैं (हम अभी तक उत्पादन में नहीं हैं) ... एक कार्यालय के लिए (ग्राहक, नाच)। यादृच्छिक अवसरों पर, उन्हें इस तरह के 403 मिलेंगे, लेकिन फिर रीफ्रेश करें और यह दूर हो जाएगा (इसलिए एचटीएमएल में टोकन की कमी नहीं है आदि)
मैं कारणों और समाधानों पर विचार कर रहा हूं, और यह हो सकता है कि कार्यालय में एक बेहद जबरदस्त या खराब सेट अप प्रॉक्सी कैश है, या इसी तरह, और हम जो कुछ भी कर सकते हैं, उसके बारे में कुछ सुझावों की सराहना करेंगे, डीजेगो/अपाचे तरीके से ओवर-द-टॉप प्रॉक्सी से निपटने के लिए (ग्राहक का कार्यालय जीता इन सेटअप को बदल नहीं सकते हैं) या इन सीएसआरएफ विफल होने के कारण और क्या हो सकता है।
Btw: इस स्क्रैच से एक 1.2.3 परियोजना, नहीं 1.1 उन्नयन किसी तरह का था, और हम सिर्फ एक मानक/सही 1.2.3 CSRFMiddleware और मैन्युअल रूप से जोड़ा csrf_tokens का उपयोग करें - नहीं CSRFResponseMiddleware स्वचालित रूप से csrf_token शामिल करने के लिए
इसके अलावा: यह दो अलग-अलग सर्वर (देव सर्वर और स्टेजिंग सर्वर) पर हुआ है, जो अलग-अलग स्थानों में होस्ट किए जाते हैं। सामान्य कारक (सिद्धांत में) एक ही Django/Apache/mod_wsgi सेटअप, एक ही कोडबेस और उसी कार्यालय को 403 प्राप्त कर रहे हैं (और 403s को अपने स्थान पर दोहराने में सक्षम नहीं हैं)।