Miklix

एनजीआईएनएक्स क्यास मेट्दै गर्दा त्रुटि लगमा आलोचनात्मक अनलिङ्क त्रुटिहरू राख्छ

प्रकाशित: २०२५ फेब्रुअरी १५: ११:२७:५० UTC

यो लेखले तपाईँको लग फाइलहरू त्रुटि सन्देशहरूसँग अव्यवस्थित नराखी एनजीआईएनएक्सको क्यासबाट वस्तुहरू कसरी मेटाउने भनेर व्याख्या गर्दछ। सामान्यतया सिफारिस गरिएको दृष्टिकोण नभए तापनि, यो केही किनारा मामलाहरूमा उपयोगी हुन सक्छ।


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

Deleting NGINX Cache Puts Critical Unlink Errors in Error Log

यस पोस्टमा जानकारी उबुन्टु सर्भर 14.04 एक्स 64 मा चलिरहेको एनजीआईएनएक्स 1.4.6 मा फास्टसीजीआई क्याचिंगमा आधारित छ। यो अन्य संस्करणका लागि मान्य हुन सक्छ वा नहुन पनि सक्छ ।

(अद्यावधिक २०२५: मैले ओरिजिनल पोस्ट लेखेँ र अहिले, धेरै परिवर्तन भएको छ। सर्भरहरू छिटो र सस्ता छन्, त्यसैले म वास्तवमा यस पोस्टमा वर्णन गरिएको दृष्टिकोणसिफारिस गर्दिन जहाँ म गतिशील सामग्रीको केही अतिरिक्त पुस्ताहरू बचत गर्न मात्र क्यास एक्सपायरी माइक्रो-प्रबन्ध गर्ने प्रयास गर्दछु। म भविष्यको सन्दर्भको लागि यहाँ सामग्री छोड्नेछु र यदि कसैलाई वास्तवमा कुनै पनि कारणको लागि आवश्यक छ भने। मैले पुष्टि गरेको छैन कि यो अझै पनि एनजीआईएनएक्सको हालको संस्करणहरूको लागि काम गर्दछ, यद्यपि, तर मलाई लाग्छ कि यसले गर्दछ)।

अपाचेबाट एनजीआईएनएक्समा धेरै साइटहरू माइग्रेट गरेपछि म यसको बिल्ट-इन क्याचिंग क्षमताहरूको धेरै शौकीन भएको छु, जुन मबाट धेरै हस्तक्षेप नगरी अधिकांश परिस्थितिहरूमा धेरै राम्रो काम गर्दछ।

तथापि, साइटहरू मध्ये एकको लागि, मलाई वास्तवमै क्यास खाली गर्ने क्षमता चाहिन्छ (दुबै पूर्ण रूपमा र व्यक्तिगत प्रविष्टिहरू हटाउनुहोस्)। एनजीआईएनएक्सको नि: शुल्क समुदाय संस्करणले केवल समय-आधारित क्यास समाप्तिलाई समर्थन गर्दछ (अर्थात् तपाईं यसलाई एक घण्टा, एक दिन, आदि पछि केहि परिवर्तन भएको छ कि छैन भनेर जाँच गर्न सेट अप गर्न सक्नुहुन्छ)। तर कुनै निश्चित स्रोत परिवर्तन हुने समयअगावै निर्धारण गर्ने भरपर्दो तरिका छैन भने के गर्ने? उदाहरणका लागि, मलाई थाहा छैन कि यो एक घण्टा, एक दिन वा एक वर्ष अघि म फिर्ता आउँदछु र यस पोस्टमा केहि सम्पादन गर्दछु - र यदि एक दिनको लागि क्यासिंग ठीक हुने थियो भने एक घण्टाको लागि मात्र क्यास किन?

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

सौभाग्यवश, यो पत्ता लाग्छ कि तपाईं क्यास डाइरेक्टरीबाट फाइलहरू आफैं मेट्न सक्नुहुनेछ र एनजीआईएनएक्सले यसमा लिनेछ र तपाईंको ब्याक-इन्डबाट कुनै हिचकिचाहट बिना नयाँ प्रतिलिपि प्राप्त गर्नेछ। तथापि, यदि तपाईं आफ्नो कन्फिगरेसन ट्वीक नगरी यो गर्नुहुन्छ भने तपाईले केहि समय पछि तपाईंको त्रुटि लगमा यो जस्तै सन्देशहरूको पूरा गुच्छा देख्न सक्नुहुनेछ:

2015/03/04 17:35:24 [crit] 16665#0: unlink() \"/path/to/nginx/cache/9/a0/53eb903773998c16dcc570e6daebda09\" failed (2: No such file or directory)

यो देखिन्छ कि यी त्रुटिहरू तब हुन्छन् जब एनजीआईएनएक्स आफैले fastcgi_cache_path निर्देशनको निष्क्रिय परिमितिद्वारा निर्दिष्ट गरिएको समय पछि क्यास प्रविष्टिहरू मेट्न प्रयास गर्दछ। यसको लागि पूर्वनिर्धारित केवल 10 मिनेट हो, तर तपाईं यसलाई तपाईँले चाहेको मूल्यमा सेट गर्न सक्नुहुन्छ। यदि तपाईंले यसलाई सेट गर्नुभयो भने, भन्नुहोस्, 10 वर्ष, यो सम्भवतः असम्भव छ कि तपाईंले यस बीचमा सर्भर पुन: सुरु गर्नुभएको छैन त्यसैले मेमोरीमा कुञ्जी अनुक्रमणिका यस बीचमा खाली भएको थियो। यदि तपाईं यो गर्नुहुन्छ भने, के तपाईंले यो सुनिश्चित गर्न आवश्यक छ कि तपाईं आफैले क्यास खाली गर्नुहुन्छ, एनजीआईएनएक्सले अब तपाईंको लागि यो गर्नेछैन।

मलाई यो वास्तवमै अनौठो लाग्छ कि यसलाई एक महत्वपूर्ण त्रुटि मानिन्छ कि क्यास प्रविष्टि मेट्न सकिदैन किनकि यो अवस्थित छैन। यसको गम्भीरता वर्गीकरण यति उच्च छ भन्ने तथ्यको अर्थ यो हो कि निश्चित थ्रेसहोल्ड भन्दा तल लग प्रविष्टिहरू बेवास्ता गरेर मात्र छुटकारा पाउन असम्भव छ। ब्याक-इन्डबाट नयाँ प्रतिलिपि प्राप्त गर्ने बित्तिकै प्रविष्टि फेरि अस्तित्वमा हुनेछ, त्यसैले यो मेरो विचारमा धेरै भन्दा धेरै चेतावनी हुनुपर्दछ।

अब, यदि क्यास प्रविष्टि अनुमतिहरू वा केहि तेस्रोको साथ समस्याहरूको कारण मेट्न सकिएन भने, यो एक महत्वपूर्ण त्रुटि हुनेछ, किनकि यसले एनजीआईएनएक्सलाई यसको समाप्ति समय पछि लामो समयसम्म क्यास गरिएको सामग्री सेवा जारी राख्न सक्छ, तर सफाई प्रक्रियाले यो भिन्नता बनाउन सक्दैन।

ब्लुस्कीमा सेयर गर्नुहोस्फेसबुक मा शेयर गर्नुहोस्लिंक्डइनमा सेयर गर्नुहोस्Tumblr मा सेयर गर्नुहोस्X मा सेयर गर्नुहोस्लिंक्डइनमा सेयर गर्नुहोस्Pinterest मा पिन गर्नुहोस्

मिकेल बाङ क्रिस्टेनसेन

लेखकको बारेमा

मिकेल बाङ क्रिस्टेनसेन
मिकेल miklix.com का निर्माता र मालिक हुन्। उनीसँग एक पेशेवर कम्प्युटर प्रोग्रामर/सफ्टवेयर विकासकर्ताको रूपमा २० वर्ष भन्दा बढीको अनुभव छ र हाल उनी एक ठूलो युरोपेली आईटी निगममा पूर्ण-समय कार्यरत छन्। ब्लगिङ नगर्दा, उनी आफ्नो खाली समय विभिन्न रुचि, शौक र गतिविधिहरूमा बिताउँछन्, जुन केही हदसम्म यस वेबसाइटमा समेटिएका विषयहरूको विविधतामा प्रतिबिम्बित हुन सक्छ।