2013-02-24 126 views
5

यदि मैं आईआईएस रिवाइट मॉड्यूल को सक्रिय करता हूं तो फ़ाइल कैश हिट काउंटर में वृद्धि नहीं होती है।यूआरएल पुनर्लेखन आईआईएस की स्थिर फ़ाइल कैशिंग ब्लॉक करता है?

मैं प्रदर्शन मॉनीटर (Perfmon.exe/वेब सेवा कैश/फ़ाइल कैश हिट्स)

अगर मैं निष्क्रिय पुनर्लेखन "फ़ाइल कैश हिट" आईआईएस कैशिंग एल्गोरिथ्म के अनुसार सामान्य रूप से बढ़ाने के द्वारा हिट अनुरेखण कर रहा हूँ।

अनुरोधित फ़ाइल दोनों मामलों में स्थिर HTML फ़ाइल है।

क्या URL IIS की स्थिर फ़ाइल कैशिंग को पुनर्लेखन करता है?

+1

आईआईएस प्रबंधक में, मॉड्यूल और ओपन फ़ीचर पर जाएं। दाईं ओर, "ऑर्डरर्ड सूची देखें" पर क्लिक करें। अगर यह नहीं है तो रिवाइट मॉड्यूल नीचे के पास होना चाहिए। – Jamey

उत्तर

0

The docs state कि हाँ, आईआईएस फिर से लिखना फ़ाइल कैशिंग को रोक सकता है।

बेहतर कर्नेल मोड और यूजर मोड में पुनः के लिए प्रतिक्रियाओं का उत्पादन कैशिंग का उपयोग: आईआईएस आउटपुट कैशिंग

URL पुनर्लेखन मॉड्यूल के साथ

इंटरेक्शन के लिए आदेश में आईआईएस उत्पादन कैश व्यवहार को नियंत्रित करता है यूआरएल, इस प्रकार यूआरएल रिवाइट मॉड्यूल का उपयोग करने वाले वेब एप्लिकेशन के प्रदर्शन में सुधार करता है। प्रतिक्रियाओं के कैशिंग को रोकें, जब यूआरएल पुनर्लेखन के कारण तर्क कैशिंग का उल्लंघन किया जा सकता है। मॉड्यूल कुछ कैशिंग गुणों को बदलकर या कैशिंग को पूरी तरह से अक्षम करके आउटपुट कैशिंग को नियंत्रित करता है। मॉड्यूल आईआईएस पाइपलाइन में किसी भी अन्य मॉड्यूल द्वारा आईआईएस कॉन्फ़िगरेशन या द्वारा अक्षम कर दिया गया है तो आउटपुट कैशिंग सक्षम करें। उत्पादन कैशिंग इस प्रकार नियंत्रित किया जाता है:

  1. मॉड्यूल हमेशा उपयोगकर्ता मोड कैश की स्थापना varyByHeader = "HTTP_X_ORIGINAL_URL" सेट। यह सुनिश्चित करता है कि जब उपयोगकर्ता मोड कैशिंग सक्षम किया जाता है तो मॉड्यूल खाते में पर मूल URL को कैश प्रविष्टि के लिए एक कुंजी बनाता है।

  2. यदि एक पुनर्लेखन नियम सेट सर्वर वैरिएबल का उपयोग उन मानों के साथ करता है जो या तो प्रक्रिया के पूरे जीवन में स्थिर हैं या अनुरोध किए गए यूआरएल से प्राप्त किए गए हैं, तो नियम सेट को आउटपुट कैशिंग के लिए सुरक्षित माना जाता है। इसका मतलब है कि URL पुनर्लेखन मॉड्यूल varyByHeader की स्थापना के अलावा अन्य किसी भी तरह से मौजूदा कैशिंग नीति कदम

निम्न सर्वर चर, कोई असर जब फिर से लिखने के नियमों में इस्तेमाल किया, का कारण नहीं है में वर्णित के रूप में परिवर्तन नहीं होगा उत्पादन कैशिंग नीति पर:

"CACHE_URL", "DOCUMENT_ROOT", "HTTP_URL", "HTTP_HOST", "PATH_INFO", "PATH_TRANSLATED", "QUERY_STRING", "REQUEST_FILENAME", "REQUEST_URI", "SCRIPT_FILENAME" , "SCRIPT_NAME", "SCRIPT_TRANSLATED", "UNENCODED_URL", "URL", "URL_PATH_ जानकारी "," APP_POOL_ID ", " APPL_MD_PATH "," APPL_PHYSICAL_PATH "," GATEWAY_INTERFACE ", " SERVER_SOFTWARE "," SSI_EXEC_DISABLED "

3।यदि एक पुनर्लेखन नियम सेट उपर्युक्त सूची में उल्लिखित किसी सर्वर चर का उपयोग नहीं करता है, तो नियम सेट को आउटपुट कैशिंग के लिए असुरक्षित माना जाता है। यह का अर्थ है कि यूआरएल रिवाइट मॉड्यूल के लिए कर्नेल मोड कैशिंग को अक्षम करेगा, अनुरोध है कि अनुरोध यूआरएल फिर से लिखा गया था या नहीं। अतिरिक्त में, मॉड्यूल कैशिंग गुण को सेट करके उपयोगकर्ता-मोड कैश के लिए कैशिंग नीति को बदल देगा नियम सेट में उपयोग किए गए सभी सर्वर चर मानों की समेकित स्ट्रिंग को शामिल करने के लिए।