फ़ायरफ़ॉक्स 5 'कैशिंग' 301 रीडायरेक्ट करता है


92

क्या इस 'सुविधा' को निष्क्रिय करने का कोई तरीका है?

उदाहरण के लिए, यदि http://localhost/foo.htmlमुझसे यह अनुरोध किया जाता है कि मैंने रूट पते पर '301' निर्दिष्ट किया है, foo.htmlतो वेब सर्वर को पूरी तरह से बायपास करने के लिए बाद के सभी अनुरोध और ffox 5 यह कैश की जाँच करेगा, पढ़ें कि यह यूआरएल '301'ed पहले था और एक बदलाव के लिए भी जाँच के बिना पुनर्निर्देशित।

अगर मैंने foo.html301'इंग से रोका है, तो मुझे ऐसा करने से 'ठीक' करने के लिए फ़ायरफ़ॉक्स का कैश साफ़ करना होगा।

क्रोम, IE और फ़ायरफ़ॉक्स के पिछले संस्करण ऐसा नहीं करते हैं।


यहां तक ​​कि कैश को हटाने से मेरे लिए यह त्रुटि हल नहीं होती है (फ़ायरफ़ॉक्स 17.0.1, लिनक्स)।
कोनराड हॉफनर

2
@kirdie "स्पष्ट हाल के इतिहास" संवाद में, सुनिश्चित करें कि आपने "सब कुछ" के लिए समय सीमा निर्धारित की है, और "कैश" चेकबॉक्स की जांच करें। यदि चयनित समय सीमा आपके द्वारा हाल ही में रीडायरेक्ट किए गए url से अधिक हाल की है, तो कैश प्रविष्टि को साफ़ नहीं किया जाएगा।
केल्विन

13
@kirdie और हर कोई एक ही समस्या के साथ: Ctrl + H के साथ इतिहास को देखें। फिर साइट पर राइट क्लिक करें और "इस साइट के लिए सभी इतिहास हटाएं" (या कुछ इसी तरह) का चयन करें। वो मेरे लिए किया गया।
लार्स Nyström

4
@ LarsNyström: एक वेब ऐप विकसित करना और इस में भागना - आपके सुझाव ने मेरे लिए त्रुटिपूर्ण काम किया। यह FF20.0 में "इस साइट के बारे में भूल जाओ"
cincodenada

1
301 को " स्थायी रूप से ले जाया गया" नहीं कहा जाता है, अगर मेरे पास केवल https परोसने वाला सर्वर है और लोग http का उपयोग करके मेरे डोमेन नाम पर जाते हैं (जैसा कि यह पर्याप्त है, क्योंकि वे अनुरोध uri को प्रकट करेंगे), मैं ब्राउज़र को याद रखना चाहूंगा कि स्थायी रूप से और नहीं की जाँच http हर बार।

जवाबों:


45

301 केवल एक सामान्य कैचएबल प्रतिक्रिया कोड है। http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.33 कहता है:

This response is cacheable unless indicated otherwise. 

इसलिए यदि आप इसे कैश नहीं करना चाहते हैं, तो आपके सर्वर को कैश व्यवहार को नियंत्रित करने के लिए उपयोग किए जाने वाले सामान्य हेडर के माध्यम से इंगित करने की आवश्यकता है।

आप कैश को मैन्युअल रूप से भी साफ़ कर सकते हैं ।


7
मेरा मानना ​​है कि इसके बजाय 302 का उपयोग करना अधिक सरल होगा, जो डिफ़ॉल्ट रूप से देखने योग्य नहीं है।
फ्रैंक किसान

22
@ बोरिस ज़बर्स्की: सवाल यह नहीं है कि 'मैं कैश को कैसे साफ़ करूँ' के बजाय 'मैं पहली बार में कैश को लिखने से कैसे रोकूँ' को रोकें?
बॉबी जैक

4
यह सवाल पक्का लग रहा था कि "कैश निकालने के लिए मैं अपने आप को कैसे रखूँ"!
बोरिस ज़बर्स्की

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

1
मैंने IIS से 302 रीडायरेक्ट का उपयोग करने की कोशिश की, लेकिन फ़ायरफ़ॉक्स (और क्रोम और एज और IE) के हाल के संस्करणों ने कैश को भी उनके व्यवहार से देखते हुए। मैंने पाया कि निजी विंडो खोलना और उसे मारना वेबसाइटों को परखने और अपने ब्राउज़र के कैश को जहर देने से बचाने का सबसे अच्छा तरीका है।
dsmtoday

116

फ़ायरफ़ॉक्स में यदि आपके पास "वेब डेवलपर" टूल बार ऐडऑन है। आप हर बार पृष्ठ के नए संस्करण के लिए अक्षम -> अक्षम कैश -> पर क्लिक कर सकते हैं। फिर URL पुनः लोड करें और यह आपके कैश को रीफ़्रेश करेगा। इसलिए आपको अपना पूरा कैश खाली करने की जरूरत नहीं है।

Cptstubing06 की टिप्पणी से, निम्नलिखित कैश को साफ करने में मदद कर सकता है:

  1. Ctrl+lस्थान पट्टी पर कर्सर रखने के लिए टाइप करें।
  2. कॉन्फ़िगरेशन सेटिंग्सabout:config खोलने के लिए टाइप करें ।
  3. किसी भी चेतावनी की पुष्टि करें।
  4. सेटिंग्स को फ़िल्टर करने के लिए browser.cacheउसके बाद टाइप करें Enter
  5. डबल-क्लिक करें browser.cache.check_doc_frequency
  6. से मान बदलें 3करने के लिए 1
  7. क्लिक करें OK
  8. अस्पष्ट रूप से कैश्ड 301 पृष्ठ को फिर से देखें।
  9. समाप्त होने पर आवृत्ति को 3 पर रीसेट करें।

फ़ायरफ़ॉक्स को अब नए 301 पृष्ठ पर पुनर्निर्देशित किया जाना चाहिए, अब कैश से पुनर्निर्देशित पृष्ठ प्राप्त नहीं करना चाहिए।


4
यह मेरे लिए एक महान समाधान है - मैं समय का एक कैश्ड 301 99% चाहता हूं , लेकिन एक बार नीले रंग में मुझे रीडायरेक्ट के स्थान को बदलने की आवश्यकता हो सकती है, और अपने ENTIRE कैश को साफ़ नहीं करना चाहिए। बस स्पष्ट करने के लिए, फ़ायरफ़ॉक्स Web Developerटूल के तहत अपने स्वयं के मेनू के साथ आता है , जो कि ऐडऑन नहीं है। Addon भी कहा जाता है Web Developer, लेकिन आपके टूल मेनू में दिखाई देता है Web Developer Extensionऔर यहाँ डाउनलोड किया जा सकता है: addons.mozilla.org/en-us/firefox/addon/web-developer
cptstubing06

5
कृपया ध्यान दें - यदि आप अपने रीडायरेक्ट किए गए URL के लिए फ़ायरफ़ॉक्स को इसके कैश को अपडेट करना चाहते हैं , तो आप Web Developer Extensionफ़ायरफ़ॉक्स के परिवर्तन व्यवहार को नियंत्रित करने के लिए अस्थायी रूप से हमेशा एक नए संस्करण की जांच करने के लिए उपयोग कर सकते हैं , फिर इसे अपने सामान्य सेटिंग पर वापस सेट करें। यह वेब डेवलेपर एक्सटेंशन के तहत है -> अक्षम -> अक्षम कैश -> पृष्ठ के नए संस्करण के लिए जाँच करें -> हर बार पृष्ठ के नए संस्करण की जांच करें।
cptstubing06

1
आप जो भी विधि चुनते हैं, प्रक्रिया इस सेटिंग को हमेशा एक नए संस्करण के लिए जांचने के लिए बदलना है, फिर अपने URL को लोड पुनर्निर्देशित करें। यह तब सर्वर से टकराएगा और उस url के लिए जो भी नई प्रतिक्रिया मौजूद है, उसे प्राप्त करें और नई प्रतिक्रिया के साथ अपने कैश को अपडेट करें। फिर, आप अपने कैश चेक आवृत्ति को अपने मूल मूल्य पर सेट कर सकते हैं (डिफ़ॉल्ट "जब पृष्ठ पुराना हो जाए", लेकिन मैं "एक बार प्रति सत्र" के साथ जा रहा हूं ताकि यह सटीक परिदृश्य मेरी भागीदारी के बिना अब संभाला जाए)।
cptstubing06

@ cptstubing06 उस टिप के लिए धन्यवाद! काश आपने इसे एक समाधान के रूप में प्रस्तुत किया होता तो मैं इसे सबसे अच्छे तरीके के रूप में संभाल सकता था जब आप स्पष्ट नहीं करना चाहते कि आप पूरे कैश हैं।
मर्करीबुललेट

उम्मीद के मुताबिक DNS over HTTPSकाम करने के लिए आपको FYI करना होगा ।
user2741287

25

मैंने अभी इस समस्या का अनुभव किया है, और मेरे लिए यह दो मुद्दे थे।

यह विशेष डोमेन नाम Cloudflare के माध्यम से रूट किया गया है, इसलिए मुझे इसे विकास मोड में सेट करना पड़ा। मुझे लगता है कि Cloudflare 301 पुनर्निर्देशित कर रहा था इसलिए इसे सर्वर को अनुरोध भेजने की आवश्यकता नहीं थी। यह कदम स्पष्ट रूप से आप पर लागू नहीं हो सकता है।

फिर, मैंने टूल -> विकल्प पर जाकर अपने फ़ायरफ़ॉक्स कैश (संस्करण 11) को साफ़ कर दिया, ऊपरी दाईं ओर उन्नत बटन पर क्लिक करके, नेटवर्क टैब का चयन करें, और फिर कैश्ड वेब सामग्री के तहत अनुभाग को साफ़ करें पर क्लिक करें। नोट मेरा कैश पहले से ही 0 पर सेट था, लेकिन मुझे अभी भी क्लीयर नाउ बटन पर क्लिक करने की आवश्यकता है ताकि कैश होने से रोका जा सके।

मुझे यह जानने में दिलचस्पी होगी कि क्या कोई और इसे सत्यापित कर सकता है।


2
+1। फ़ायरफ़ॉक्स कैश को साफ़ करने पर आपके नोट ने मेरे लिए यह ठीक कर दिया (एक उपयोगकर्ता / ग्राहक के रूप में, वेबसाइट के मालिक नहीं) एक विशेष URL के लिए जहां फ़ायरफ़ॉक्स 301 अपडेट नहीं कर रहा था। धन्यवाद।
जॉन श्नाइडर

1
आप इस फ़ायरफ़ॉक्स प्लगइन के साथ बस कैश्ड रीडायरेक्ट को हटा सकते हैं: addons.mozilla.org/en-us/firefox/addon/cacheviewer-continued
स्टीव

9

मैंने इसके लिए एक समाधान ढूंढा है जो फ़ायरफ़ॉक्स 26 पर काम करता है, एक महीने के लिए अप्रचलित अप्रत्यक्ष कैश होने और फिर से शुरू होने के बाद।

  1. इतिहास मेनू पर, सभी इतिहास दिखाएं चुनें।
  2. खोज में, परिणाम की सूची लाने के लिए कैश्ड पुनर्निर्देशित समस्या वाले डोमेन में टाइप करें।
  3. उनमें से एक पर राइट-क्लिक करें और "इस साइट के बारे में भूल जाओ" चुनें।

सभी कैश किए गए पृष्ठ, चित्र और पुनर्निर्देश केवल उस साइट को कैश से हटा दिए जाएंगे। इससे आप अपने शेष कैश को साफ़ किए बिना अपनी विकास वेबसाइट के लिए पुनर्निर्देशित कर सकते हैं।

एक साइड नोट के रूप में, मुझे लगता है कि फ़ायरफ़ॉक्स को केवल कुछ दिनों के लिए ही पुनर्निर्देशित करना चाहिए। एक महीने से अधिक के लिए उन्हें कैशिंग एक साधारण गलती एक बड़ी समस्या बना सकती है।


2
यह काम करता है, लेकिन ध्यान दें कि "इस साइट के बारे में भूल जाओ" URL इतिहास (ऑटो-पूरा करने के लिए) और यहां तक ​​कि पूरे डोमेन के लिए सहेजे गए पासवर्ड भी भूल जाएंगे। जो आप चाहते हैं वह नहीं हो सकता है।
तानीस

5

एक त्वरित सुधार एक निजी ब्राउज़र विंडो का उपयोग करना है।


यह मेरा त्वरित सुधार है, और कभी-कभी केवल URL के अंत में एक प्रश्न चिह्न जोड़ना चाल कर सकता है।
जॉनसन ने

5

फ़ायरफ़ॉक्स के हाल के संस्करणों में निर्मित डेवलपर टूल के पास इसके लिए एक समाधान है। देव फलक खुला होने पर सबसे पहले कैशिंग बंद करें:

  • किसी भी पेज पर, F12डेवलपर टूल लाने के लिए हिट करें
  • सबसे दाईं ओर, गियर आइकन "टूलबॉक्स विकल्प" पर क्लिक करें
  • Advanced Settingsविकल्प की जांच के तहतDisable Cache (when toolbox is open)

अब किसी भी समय आप कैश्ड पृष्ठ को रिफ्रेश करना चाहते हैं, पृष्ठ को F12 डेव टूलबॉक्स के साथ लोड / रीफ्रेश कर सकते हैं। फ़ायरफ़ॉक्स कैश को बायपास करेगा और सर्वर से ताज़ा डेटा प्राप्त करेगा।

मैं इस पद्धति को पसंद करता हूं क्योंकि यह नहीं बदलता है कि ब्राउज़र "सामान्य" गैर-डीबग ब्राउज़िंग के लिए कैसे व्यवहार करता है, और आप वैश्विक सेटिंग को उसके मूल मूल्य पर पुनर्स्थापित करने के लिए भूल नहीं करते हैं।

फ़ायरफ़ॉक्स 39 में सत्यापित


1
यह कैश्ड रीडायरेक्ट की मदद नहीं करता है।
सुपरडक

3

301 इंगित करता है कि स्थायी रूप से ले जाया गया है। इसलिए मैं प्रतिक्रिया को कैश करना उचित समझता हूं।

क्या आपने cache-controlऔर expiresहेडर सेट करने की कोशिश की है ?

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9


3
कभी-कभी हम सर्वरों को विकसित कर रहे हैं, या एक माइग्रेट कर रहे हैं, या एक गलती का पता लगा रहे हैं, और वास्तव में इस सामान को बंद करने की आवश्यकता है क्योंकि यह वास्तव में रास्ते में मिल सकता है।
जेसन


1

301 का अर्थ है स्थायी रूप से चला गया और यह सुरक्षित है, इसलिए मुझे लगता है कि ब्राउज़र के लिए "सही" व्यवहार है। आपको 303 See अन्य का उपयोग करना चाहिए ।


5
आईई और क्रोम कैश 303 और इसे कैशिंग की अनुमति देने के लिए HTTP कल्पना को बदला जा रहा है। ड्राफ्ट देखें tools.ietf.org/html/draft-ietf-httpbis-p2-semusics-15 पर । तो रीडायरेक्ट कैशिंग को रोकने का एकमात्र सुरक्षित तरीका स्पष्ट कैशे-नियंत्रण हेडर सेट करना है।
बोरिस ज़बर्स्की
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.