यह प्रॉक्सी पर और Vary
प्रतिक्रिया-शीर्ष पर निर्भर करता है। आम तौर पर, प्रॉक्सी Cookie
शीर्षलेख वाले अनुरोध के जवाब को कैश नहीं करेंगे। हालांकि, यह वास्तव में गारंटी नहीं है।
जब आप निर्देश public
निर्देश के साथ अपना Cache-Control
शीर्षलेख निर्दिष्ट करते हैं, तो आप विभिन्न ग्राहकों के बीच कैश साझा करने के लिए प्रॉक्सी पूछ रहे हैं। यह अनुमान है कि आपकी मंशा नहीं है, इसलिए आपको इसके बजाय private
निर्दिष्ट करना चाहिए। देखें: http://www.mnot.net/cache_docs/#CACHE-CONTROL
प्रॉक्सी सर्वर पर कुकी कैशिंग के रूप में क्या अंतर होगा?
वास्तव में नहीं। यह सब करता है कि यह प्रॉक्सी को बताता है कि इसे एक बालों के कैश से नहीं देना चाहिए। यह प्रभावित नहीं करता कि कैसे कैश नियंत्रित होता है।
क्या इन प्रकार की फ़ाइलों तक पहुंचने पर कुकीज़ को प्रॉक्सी सर्वर पर कैश किया जाएगा? या स्थिर फाइलों के समान कैशिंग है?
एक HTTP स्तर के सॉफ़्टवेयर (उदा। प्रॉक्सी) के लिए, स्थिर और गतिशील सामग्री के बीच कोई अंतर नहीं है। कुकीज़ केवल http-हेडर कि, एक Set-Cookie
के माध्यम से एक अनुरोध (Cookie
हेडर) के साथ भेजा या एक प्रतिक्रिया (Set-Cookie
हेडर)
साथ भेजा जाता है आप ब्राउज़र (या तो जावास्क्रिप्ट के माध्यम से या सर्वर साइड से में कुकी सेट तो कर रहे हैं हेडर), ब्राउज़र कुकी को उसी डोमेन पर आने वाले सभी अनुरोधों के साथ वापस भेज देगा। यह अनुरोधों के साथ Cookie
शीर्षलेख जोड़कर ऐसा करता है।
संपादित करें:
मैं अपने वास्तविक फ़ाइलें प्रॉक्सी पर कैश की जा करने के लिए नहीं, बल्कि अलग-अलग उपयोगकर्ताओं की कुकीज़ चाहते हैं। मैं यह कैसे करु?
- एक
Set-Cookie
हैडर (चूंकि यह प्रॉक्सी द्वारा कैश जायेगा)
- सर्वर साइड पर एक पक्ष प्रभाव नहीं है शामिल हैं (उदाहरण के लिए:
आप किसी भी प्रतिसाद ग्रहण से बचने के लिए है कि या तो की जरूरत है अनुरोध प्राप्त करने के लिए आपके आवेदन के लिए यह महत्वपूर्ण है - उदाहरण के लिए, ट्रैकिंग पिक्सेल को कैश करना समझ में नहीं आता है)
जहां अनुरोधों की सामग्री Cookie
हैडर निर्धारित करता है कि क्या प्रदान किया जाता है (जैसे प्रिंटिंग "वेलकम बैक, जॉन डो" या अन्य अनुकूलन)
आप वास्तव में ऐसा करेंगे जो आपकी बैकएंड तकनीक पर निर्भर करता है। यह आपका एप्लिकेशन है जो जानता है कि Cookie
हेडर प्रतिक्रिया के लिए महत्वपूर्ण है या कोई प्रतिक्रिया संभावित रूप से Set-Cookie
शीर्षलेख हो सकती है या नहीं।
मेरे द्वारा उपयोग किए जाने वाले एप्लिकेशन ढांचे में, कैश-बाय-एक्सपेयर हेडर सेट करने के लिए एक फ़ंक्शन है। अगर मैं इसे कॉल करता हूं और उसी अनुरोध के भीतर कुकीज़ एक्सेस करता हूं, तो मुझे एक त्रुटि मिल जाएगी। यह सुनिश्चित करता है कि मैं निजी सामग्री को कैश करने के लिए गलती से प्रॉक्सी से पूछता हूं। आपको अपने आवेदन में लागू एक समान तर्क की आवश्यकता है।
वैकल्पिक रूप से, आप एक ही काम करने के लिए किनारे-स्तर प्रॉक्सी को कॉन्फ़िगर कर सकते हैं। आमतौर पर ऐसा किया जाता है यदि आप एप्लिकेशन को पूरी तरह से नियंत्रित नहीं करते हैं।
अगर मैं का उपयोग कर फ़ाइलें हैडर कैश-नियंत्रण "अधिकतम उम्र = 604,800, सार्वजनिक", होगा किसी भी अनुरोध कुकीज़ (कुकी) या प्रतिक्रिया कुकीज़ (सेट-कुकी) (अपने में के बाद से अन्य उपयोगकर्ता के कंप्यूटर को हस्तांतरित किया कैश)? या यह केवल उस व्यक्तिगत उपयोगकर्ता की ब्राउज़िंग के लिए कैश किया जाएगा?
अनुरोध कुकीज़ को कैश नहीं किया गया है और कहीं भी स्थानांतरित नहीं किया जाएगा। प्रतिक्रिया (Set-Cookie
) कैश किया गया है। चूंकि आप सार्वजनिक रूप से cache-control
निर्दिष्ट करते हैं, इसलिए यह सभी ग्राहकों के बीच साझा किया जाएगा। ध्यान दें कि भले ही अनुरोध कुकी सीधे कैश नहीं की जाती है, भले ही आप पृष्ठ में कुछ प्रस्तुत करते हैं, जो कुकीज़ पर निर्भर करता है (उदा। यदि आप सर्वर साइड सत्र स्थिति, जैसे प्रमाणीकरण के लिए कुकी का उपयोग करते हैं), तो आप वैयक्तिकृत प्रतिक्रिया को कैश करेंगे।
सेटिंग कैश-कंट्रोल "अधिकतम आयु = 7200, प्रॉक्सी-रीडालिडेट" के बारे में क्या है? एक बार फिर धन्यवाद।
वही बात। proxy-revalidate
किसी भी प्रॉक्सी (अगर कोई है) को सूचित करता है कि एक बालों वाली कैश की सेवा नहीं कर सकता है। जैसे एक बार 7200 सेकेंड पास हो जाने के बाद, कैश को तुरंत शुद्ध किया जाना चाहिए। इसके बिना, समय-समय पर पहुंचने के बाद, कैश आम तौर पर एक बालों की कैश की सेवा करते रहेंगे और फिर पृष्ठभूमि में एक ताजा प्रतिलिपि लाएंगे। या नहीं - प्रॉक्सी पर निर्भर करता है।
मैं चाहता हूं कि मेरी वास्तविक फाइल प्रॉक्सी पर कैश की जाए, लेकिन _not_ व्यक्तिगत उपयोगकर्ताओं की कुकीज़। मैं यह कैसे करु? – Hope4You
आपको बहुत बहुत धन्यवाद। मैंने अपना प्रश्न अपडेट कर लिया है। कोई अतिरिक्त मदद बहुत अच्छी होगी। – Hope4You
आपने कहा था कि 'प्रॉक्सी एक कुकी हेडर वाले अनुरोध के प्रति प्रतिक्रिया नहीं देगी।' समस्या यह है: जब मैं छवियों और सीएसएस जैसी फ़ाइलों का अनुरोध करता हूं, तो ब्राउज़र कुकीज़ भेजता है (हालांकि वे प्रतिपादन के लिए अनावश्यक हैं - यह बस है जिस तरह से ब्राउज़र काम करते हैं)। क्या इसका मतलब यह है कि इन फ़ाइलों को कैश नहीं किया जाएगा? – Hope4You