2013-04-11 14 views
7

पर क्लिक करता है तो मुझे लगता है कि अधिकांश SO उपयोगकर्ताओं से विपरीत समस्या है। मेरे पास एक स्थिर पृष्ठ है जो शायद ही कभी बदलता है, और मैं चाहता हूं कि ब्राउजर उस पृष्ठ को फिर से लोड न करें जब उपयोगकर्ता इसे वापस सेविगेट करता है। मैं उन नियमों की कोई साधारण सूची नहीं ढूंढ पा रहा हूं जो ब्राउज़र द्वारा बैक-नेविगेशन पर फिर से लोड होने पर विस्तारित होते हैं, और जब ऐसा नहीं होता है।ब्राउजर को पृष्ठ को फिर से लोड करने से रोकना जब उपयोगकर्ता पिछला

यदि यह कोई फर्क पड़ता है, तो मेरे यूआरएल में एक क्वेरी स्ट्रिंग है, और https:// प्रोटोकॉल का उपयोग करके परोसा जाता है।

+0

केवल वापस नेविगेशन पर क्यों? क्या होगा यदि उपयोगकर्ता इस पृष्ठ को इतिहास से लोड करता है, और यह अपडेट नहीं किया गया है? इसे फिर से लोड नहीं किया जाना चाहिए। HTTP 304 संशोधित स्थिति कोड नहीं है जो आपको चाहिए: http://www.w3.org/Protocols/HTTP/HTRESP.html – user4035

+0

यह केवल कुछ है जिसके बारे में मुझे कम चिंता है। मैं केवल बैक-नेविगेशन केस को ठीक कर रहा हूं, क्योंकि कई उपयोगकर्ता एक लिंक पर क्लिक करते हैं, फिर उन्हें तुरंत वापस जाएं यदि उन्हें वह नहीं मिलता है जो उन्हें चाहिए। उस बिंदु पर एक अतिरिक्त सर्वर लोड होने की समस्या वह समस्या है जिसे मैं संबोधित करना चाहता हूं। – levik

+0

क्या आप एक php स्क्रिप्ट का उपयोग कर रहे हैं और HTTP 304 को संशोधित नहीं करना चाहते हैं? – user4035

उत्तर

10

आपको यह जानने की आवश्यकता नहीं है कि बैक बटन का उपयोग किया गया है या नहीं। कैश कंट्रोल हेडर का उपयोग करके ब्राउज़र को अपने पृष्ठ को कैश करने के लिए बस बताएं। आप गूगल से उदाहरण के बहुत सारे देखेंगे - http cache control headers

विशेष रूप से, इन मेटा टैग को देखने के:

<meta http-equiv="CACHE-CONTROL" content="..." /> 
<meta http-equiv="EXPIRES" content="..." /> 

संपादित करें:

यहाँ है कि गूगल खोज से परिणाम में से एक के लिए एक लिंक है । मुझे लगता है कि यह हेडर काम करने के तरीके के बारे में एक बहुत अच्छा स्पष्टीकरण देता है। Increasing Application Performance with HTTP Cache Headers

इन शीर्षकों के साथ आप निर्दिष्ट कर सकते हैं कि आपके पृष्ठों को कैश करना कितना समय है; 10 मिनट, 30 मिनट, घंटे, दिन, आदि

+0

मुझे लगता है कि मैं जो खोज रहा हूं वह एक संसाधन है जो सूचीबद्ध करेगा कि अलग-अलग परिस्थितियों में अलग-अलग ब्राउज़र इन हेडर का सम्मान कैसे करते हैं। उदाहरण के लिए, मुझे अतीत में कुछ ब्राउज़र के बिना अलग-अलग क्वेरी स्ट्रिंग वाले यूआरएल याद आते हैं। – levik

+0

यही कारण है कि मैंने आपके लिए Google लिंक शामिल किया था। इसके बारे में वेब पर बड़ी मात्रा में जानकारी है। मैंने उस खोज से संसाधनों में से एक को आपके जवाब में जोड़ा। यह इस सुंदर अच्छी तरह से बताता है और उदाहरण देता है। –

0

क्या आपने ऑनपेज्स शरीर टैग की घटना की कोशिश की है? ज्यादातर मामलों पर

<script type="text/javascript"> 
    function caller() 
    { 
     return false; 
    } 
</script> 
</head> 

<body onpageshow="caller();"> 
</body> 

काम करता है।

संबंधित मुद्दे