यदि आप IIS का उपयोग करते समय कैश नियंत्रण HTTP शीर्ष लेख को संशोधित करने के लिए कैसे


सारांश


समय-समय पर बार-बार बदलने सामग्री की कैशिंग अक्षम करने के लिए इंटरनेट सूचना सेवाओं (IIS) का उपयोग करने वाले वेब व्यवस्थापक पड़ सकता है। सक्रिय सर्वर पृष्ठ (ASP), साथ ही CacheControlCustomमेटाबेस गुण का उपयोग करते हुए कैश नियंत्रण HTTP शीर्ष लेख का मान सेट करने के लिए कैसे यह आलेख वर्णन करता है।

अधिक जानकारी


जब आप अक्सर परिवर्तन, आप कौन सी सामग्री कैश्ड किया जा कर सकते हैं यह निर्दिष्ट करने के लिए चाहते हैं हो सकता है कि सामग्री के साथ कार्य करें और क्या नहीं कर सकता, और यदि क्लाइंट या किसी प्रॉक्सी सर्वर सामग्री को कैश करना चाहिए। CacheControlCustom गुण, जो संपूर्ण सर्वर, किसी विशेष वेब साइट या किसी विशिष्ट भौतिक या वर्चुअल निर्देशिका के लिए सेट कर सकते हैं, के माध्यम से आप IIS में ये विकल्प निर्दिष्ट कर सकते हैं। यह गुण सेट कर रहा है जो निम्न के समान HTTP शीर्ष लेख देता है:
HTTP/1.1 200 OKServer: Microsoft-IIS/5.0Cache-Control: <CACHE SETTING>Content-Type: <type>/<subtype>Content-Length: <size of content>
कैश सेटिंग मान HTTP/1.1 विनिर्देश द्वारा निर्धारित होता है।

सामान्यतः उपयोग किए गए HTTP/1.1 कैश-नियंत्रण शीर्षलेख मान

HTTP/1.1 विनिर्देश RFC 2616 में कैश नियंत्रण शीर्ष लेख के लिए कई मानों को परिभाषित करता है। निम्न सूची में उपयोग किए जाते हैं और सामान्य मानों में से कुछ हैं।
  • सार्वजनिक: HTTP प्रतिसाद कोई कैश द्वारा कैश हो सकता है। उदाहरण के लिए, कोई क्लाइंट या किसी प्रॉक्सी सर्वर प्रतिसाद को कैश कर सकते हैं। यह सामग्री के समान प्रॉक्सी सर्वर का उपयोग कर रहे हैं उपयोगकर्ताओं में साझा कर सकते हैं।
  • निजी: प्रत्युत्तर संदेश कोई एकल क्लाइंट के लिए लक्षित है और एक साझा कैश द्वारा कैश नहीं होने चाहिए। भले ही कोई क्लाइंट कर सकते हैं उदाहरण के लिए, किसी प्रॉक्सी सर्वर प्रतिसाद कैश होना चाहिए नहीं है। यह समान प्रॉक्सी सर्वर का उपयोग कर रहे अन्य क्लाइंट्स भिन्न कैश की गई संस्करण बनाए रखने के दौरान कैश्ड संस्करण, बनाए रखने के लिए क्लाइंट की अनुमति देता है।
  • नहीं-कैश: में पूरा पथ कोई कैश प्रतिसाद की कैश की गई प्रतिलिपि बनाए रखने चाहिए। यह भी क्लाइंट या प्रॉक्सी सर्वर एक क्रमिक सामग्री अनुरोध करने के लिए कैश्ड संस्करण का उपयोग करते हुए प्रतिसाद देगा कि निर्दिष्ट करने के लिए आप की अनुमति देता है।

कैश-नियंत्रण गुण सेट करना

निम्न उदाहरण इस मान सेट करने के लिए विभिन्न विधियों को निर्धारित करें:

किसी पृष्ठ के लिए

सक्रिय सर्वर पृष्ठ (ASP), का उपयोग कर निम्न ASP कोड का कोई विशेष पेज कैश अक्षम करता:
<% @Language="VBScript" %><% Response.CacheControl = "no-cache" %>
नोट: बफ़रिंग सक्षम किया गया है, तो यह HTTP शीर्ष लेख को संशोधित करना है, क्योंकि यह कोड पृष्ठ की शुरुआत सम्मिलित किए जाने चाहिए।

किसी फ़ोल्डर के लिए

निम्न उदाहरण किसी फ़ोल्डर या वर्चुअल निर्देशिका डिफ़ॉल्ट वेब साइट में "छवि" नाम के लिए कैश-नियंत्रण सेटिंग सेट करें:
  • Adsutil.vbs का उपयोग कर:
    1. एक कमांड प्रॉम्प्ट खोलें, और अपने C:\InetPub\AdminScripts फ़ोल्डर में परिवर्तित करें।
    2. निम्न आदेश चलाएँ:
      CSCRIPT ADSUTIL. VBS सेट W3SVC/1/रूट/छवियाँ/CacheControlCustom "नहीं-कैश"
  • ADSI स्क्रिप्टिंग का उपयोग कर:
    1. Notepad में, निम्न ADSI कोड दर्ज करें:
      Option ExplicitDim objCacheSet objCache = GetObject("IIS://localhost/w3svc/1/root/images")objCache.CacheControlCustom = "no-cache"objCache.SetInfo
    2. C:\InetPub\AdminScripts फ़ोल्डर में Disablefolder.vbs के रूप में फ़ाइल सहेजें, और उसके बाद Notepad को बंद करें।
    3. एक कमांड प्रॉम्प्ट पर, आपके C:\InetPub\AdminScripts फ़ोल्डर के लिए परिवर्तित करें।
    4. निम्न आदेश चलाएँ:
      CSCRIPT DISABLEFOLDER. VBS

संदर्भ

इस विषय पर अधिक जानकारी के लिए, कृपया निम्न Microsoft नॉलेज बेस आलेख देखें:
247389 IIS: विशिष्ट MIME प्रकार की कैशिंग को अक्षम कैसे करें
इसके अलावा, अनुभाग में निम्न URL पर RFC 2616 HTTP/1.1 विनिर्देश का 14.9 देखें:
RFC 2616 हायपरटेक्स्ट ट्रांसफ़र प्रोटोकॉल--HTTP/1.1