Miklix

NGINX தற்காலிக சேமிப்பை நீக்குவது பிழை பதிவில் முக்கியமான இணைப்பு நீக்குதல் பிழைகளை வைக்கிறது

வெளியிடப்பட்டது: 15 பிப்ரவரி, 2025 அன்று AM 11:25:34 UTC

உங்கள் பதிவு கோப்புகள் பிழை செய்திகளால் இரைச்சலாக இல்லாமல் என்ஜினெக்ஸின் தற்காலிக சேமிப்பிலிருந்து உருப்படிகளை எவ்வாறு நீக்குவது என்பதை இந்த கட்டுரை விளக்குகிறது. பொதுவாக பரிந்துரைக்கப்பட்ட அணுகுமுறை இல்லை என்றாலும், சில விளிம்பு சந்தர்ப்பங்களில் இது பயனுள்ளதாக இருக்கும்.


இந்தப் பக்கம் முடிந்தவரை பலருக்கு அணுகக்கூடியதாக இருக்க வேண்டும் என்பதற்காக ஆங்கிலத்திலிருந்து இயந்திர மொழிபெயர்ப்பு செய்யப்பட்டது. துரதிர்ஷ்டவசமாக, இயந்திர மொழிபெயர்ப்பு இன்னும் முழுமையான தொழில்நுட்பமாக இல்லை, எனவே பிழைகள் ஏற்படலாம். நீங்கள் விரும்பினால், அசல் ஆங்கிலப் பதிப்பை இங்கே காணலாம்:

Deleting NGINX Cache Puts Critical Unlink Errors in Error Log

இந்த இடுகையில் உள்ள தகவல்கள் உபுண்டு சேவையகம் 1.4.6 x14.04 இல் இயங்கும் NGINX 14.04 இல் FastCGI கேச்சிங்கை அடிப்படையாகக் கொண்டவை. இது மற்ற பதிப்புகளுக்கு செல்லுபடியாகலாம் அல்லது செல்லுபடியாகாமல் இருக்கலாம்.

(புதுப்பிப்பு 2025: நான் அசல் இடுகையை எழுதியதற்கும் இப்போது இருப்பதற்கும் இடைப்பட்ட நேரத்தில், நிறைய மாறிவிட்டது. சேவையகங்கள் வேகமானவை மற்றும் மலிவானவை, எனவே இந்த இடுகையில் விவரிக்கப்பட்டுள்ள அணுகுமுறையை நான் உண்மையில் பரிந்துரைக்க மாட்டேன், அங்கு சில கூடுதல் தலைமுறை மாறும் உள்ளடக்கத்தை சேமிப்பதற்காக தற்காலிக சேமிப்பு காலாவதியை மைக்ரோ-நிர்வகிக்க முயற்சிக்கிறேன். எதிர்கால குறிப்புக்காக உள்ளடக்கத்தை இங்கே விட்டுவிடுகிறேன், எந்தவொரு காரணத்திற்காகவும் யாராவது உண்மையில் தேவைப்பட்டால். NGINX இன் தற்போதைய பதிப்புகளுக்கு இது இன்னும் வேலை செய்கிறது என்பதை நான் உறுதிப்படுத்தவில்லை, ஆனால் அது செய்கிறது என்று நான் நினைக்கிறேன்).

அப்பாச்சியிலிருந்து NGINX க்கு பல தளங்களை இடம்பெயர்ந்த பிறகு, அதன் உள்ளமைக்கப்பட்ட கேச்சிங் திறன்களை நான் மிகவும் விரும்பினேன், இது பெரும்பாலான சூழ்நிலைகளில் என்னிடமிருந்து அதிக தலையீடு இல்லாமல் மிகச் சிறப்பாக செயல்படுகிறது.

இருப்பினும், தளங்களில் ஒன்றிற்கு, தற்காலிக சேமிப்பை அழிக்கும் திறன் (முழுமையாக மற்றும் தனிப்பட்ட உள்ளீடுகளை அகற்றும்) எனக்கு மிகவும் தேவை. என்ஜிஎன்எக்ஸின் இலவச சமூக பதிப்பு நேர அடிப்படையிலான கேச் காலாவதியை மட்டுமே ஆதரிக்கிறது (அதாவது ஒரு மணி நேரம், ஒரு நாள் போன்றவற்றுக்குப் பிறகு ஏதேனும் மாறியிருக்கிறதா என்பதைச் சரிபார்க்க நீங்கள் அதை அமைக்கலாம்). ஆனால் ஒரு குறிப்பிட்ட வளம் எப்போது மாறும் என்பதை முன்கூட்டியே தீர்மானிக்க நம்பகமான வழி இல்லை என்றால் என்ன செய்வது? உதாரணமாக, நான் திரும்பி வந்து இந்த இடுகையில் எதையாவது திருத்துவதற்கு முன்பு ஒரு மணிநேரம், ஒரு நாள் அல்லது ஒரு வருடம் இருக்குமா என்று எனக்குத் தெரியாது - ஒரு நாள் தற்காலிக சேமிப்பு நன்றாக இருந்திருந்தால் ஏன் ஒரு மணி நேரம் மட்டுமே தற்காலிக சேமிப்பு?

தற்காலிக சேமிப்பை கைமுறையாக அழிக்கும் திறன் இங்குதான் (அல்லது உங்கள் வலை பயன்பாடு NGINX க்கு ஏதாவது சுத்திகரிப்பு செய்யப்பட வேண்டும் என்று அறிவிப்பதன் மூலம்) தேவைப்படுகிறது. என்.ஜி.என்.எக்ஸ் பின்னால் உள்ளவர்கள் தங்கள் தயாரிப்பின் கட்டண பதிப்பில் இந்த அம்சம் ஆதரிக்கப்படுவதால் இதன் அவசியத்தை தெளிவாக அறிந்திருக்கிறார்கள் - ஆனால் அவர்கள் விரும்பும் வழியில் தங்கள் உரிமத்தை அமைக்க அவர்களுக்கு நிச்சயமாக உரிமை உண்டு என்றாலும், இந்த செயல்பாடு எனக்கு உண்மையிலேயே தேவைப்படும் ஒரே கட்டண அம்சமாக இருக்கும்போது விலை எனக்கு சற்று செங்குத்தானது.

அதிர்ஷ்டவசமாக, நீங்கள் தற்காலிக சேமிப்பு கோப்பகத்திலிருந்து கோப்புகளை நீக்க முடியும் மற்றும் என்ஜிஎன்எக்ஸ் இதை எடுத்து உங்கள் பின்புறத்திலிருந்து ஒரு புதிய நகலை ஒரு இடையூறு இல்லாமல் பெறும். இருப்பினும், உங்கள் உள்ளமைவை மாற்றாமல் இதைச் செய்தால், சிறிது நேரத்திற்குப் பிறகு உங்கள் பிழை பதிவில் இதைப் போன்ற செய்திகளின் முழு தொகுப்பையும் நீங்கள் காண வாய்ப்புள்ளது:

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 உத்தரவின் செயலற்ற அளவுருவால் குறிப்பிடப்பட்ட நேரத்திற்குப் பிறகு NGINX தானே கேச் உள்ளீடுகளை நீக்க முயற்சிக்கும்போது இந்த பிழைகள் ஏற்படுகின்றன என்று தோன்றுகிறது. இதற்கான இயல்புநிலை 10 நிமிடங்கள் மட்டுமே, ஆனால் நீங்கள் விரும்பும் எந்த மதிப்பிற்கும் அதை அமைக்கலாம். நீங்கள் அதை 10 ஆண்டுகளுக்கு அமைத்தால், இதற்கிடையில் நீங்கள் சேவையகத்தை மறுதொடக்கம் செய்யவில்லை என்பது சாத்தியமில்லை, எனவே நினைவகத்தில் உள்ள முக்கிய குறியீட்டு இதற்கிடையில் அழிக்கப்பட்டிருக்கும். நீங்கள் இதைச் செய்தால், தற்காலிக சேமிப்பை நீங்களே அழிக்கிறீர்கள் என்பதை உறுதிப்படுத்த வேண்டுமா, NGINX இனி உங்களுக்காக அதைச் செய்யாது.

கேச் உள்ளீடு இல்லாததால் அதை நீக்க முடியாது என்பது ஒரு முக்கியமான பிழையாகக் கருதப்படுவது எனக்கு மிகவும் விசித்திரமாக இருக்கிறது. அதன் தீவிரத்தன்மை வகைப்பாடு மிக அதிகமாக இருப்பதால், ஒரு குறிப்பிட்ட வாசலுக்குக் கீழே உள்ள பதிவு உள்ளீடுகளை புறக்கணிப்பதன் மூலம் அகற்ற முடியாது. பின்-இறுதியில் இருந்து ஒரு புதிய நகல் கிடைத்தவுடன் நுழைவு மீண்டும் இருக்கும், எனவே இது அதிகபட்சம் ஒரு எச்சரிக்கையாக இருக்க வேண்டும், என் கருத்து.

இப்போது, அனுமதிகள் அல்லது மூன்றில் ஏதேனும் சிக்கல்கள் காரணமாக தற்காலிக சேமிப்பு உள்ளீட்டை நீக்க முடியாவிட்டால், அது ஒரு முக்கியமான பிழையாக இருக்கும், ஏனென்றால் என்ஜிஎன்எக்ஸ் அதன் காலாவதி நேரத்திற்குப் பிறகு தற்காலிக சேமிப்பு உள்ளடக்கத்தை தொடர்ந்து வழங்கக்கூடும், ஆனால் துப்புரவு செயல்முறை இந்த வேறுபாட்டைச் செய்யத் தெரியவில்லை.

ப்ளூஸ்கையில் பகிரவும்பேஸ்புக்கில் பகிரவும்LinkedIn இல் பகிரவும்Tumblr இல் பகிரவும்X இல் பகிரவும்LinkedIn இல் பகிரவும்பின்டரஸ்டில் பின் செய்யவும்

மிக்கேல் பேங் கிறிஸ்டென்சன்

எழுத்தாளர் பற்றி

மிக்கேல் பேங் கிறிஸ்டென்சன்
மிக்கல் என்பவர் miklix.com இன் படைப்பாளர் மற்றும் உரிமையாளர் ஆவார். அவருக்கு 20 ஆண்டுகளுக்கும் மேலான தொழில்முறை கணினி நிரலாளர்/மென்பொருள் உருவாக்குநராக அனுபவம் உள்ளது, மேலும் தற்போது ஒரு பெரிய ஐரோப்பிய ஐடி நிறுவனத்தில் முழுநேரப் பணியாளராக உள்ளார். வலைப்பதிவு செய்யாதபோது, ​​அவர் தனது ஓய்வு நேரத்தை பரந்த அளவிலான ஆர்வங்கள், பொழுதுபோக்குகள் மற்றும் செயல்பாடுகளில் செலவிடுகிறார், இது இந்த வலைத்தளத்தில் உள்ளடக்கப்பட்ட பல்வேறு தலைப்புகளில் ஓரளவுக்கு பிரதிபலிக்கக்கூடும்.