नॉलेजबेस · स्क्रिप्ट और प्रोग्राम
इस वेबसाइट पर एक गंभीर त्रुटि हुई है | WordPress
अंतिम अपडेट 2023-01-24
“There has been a critical error on your website” संदेश WordPress साइट के मालिकों के लिए चिंताजनक होता है। यह उपयोगकर्ताओं को वेबसाइट पर आने से रोकता है, और कुछ मामलों में आप एडमिन पैनल में भी नहीं जा पाते। सौभाग्य से, इस समस्या को बहुत समय गँवाए बिना ठीक किया जा सकता है। इस लेख में हम बताएँगे कि “There has been a critical error on your website” संदेश का क्या अर्थ है और इसे ठीक करने के पाँच तरीके कौन-से हैं।
“There Has Been a Critical Error on Your Website” का क्या अर्थ है?
कुछ WordPress एरर आपको डैशबोर्ड तक पहुँचने से रोक सकते हैं और यह संदेश दिखाते हैं:“There has been a critical error on this website. Please check your site admin email inbox for instructions.”
इस संदेश का अर्थ है कि साइट पर PHP की कोई गंभीर (fatal) त्रुटि आई है। यह तब होता है जब कोई PHP स्क्रिप्ट चलना बंद कर देती है और अपनी प्रक्रिया पूरी नहीं कर पाती। अपने उपयोगकर्ताओं की सहायता के लिए WordPress में एक सुविधा है, जो यह पता लगाती है कि कोई प्लगइन या थीम गंभीर त्रुटि पैदा कर रही है और एडमिन के ईमेल पते पर सूचना भेजती है। इस ईमेल में उपयोगकर्ताओं को समस्या के कारण के बारे में अधिक जानकारी मिलती है।
ईमेल में रिकवरी मोड में साइट खोलने के लिए एक URL भी होता है। WordPress डैशबोर्ड में सुरक्षित रूप से लॉग इन करने और समस्या ठीक करने के लिए इस लिंक पर क्लिक करें। यदि आपको यह WordPress एरर दिखे और इनबॉक्स में कोई ईमेल सूचना न मिले, तो अपना स्पैम फ़ोल्डर देखें। हालाँकि, कई बार साइट मालिकों को ईमेल मिलता ही नहीं है और उन्हें समस्या स्वयं खोजनी पड़ती है।
WordPress में क्रिटिकल एरर ठीक करने के 5 तरीके
WordPress की क्रिटिकल एरर ठीक करने के लिए आपको सबसे पहले समस्या का कारण खोजना होगा। WordPress से मिलने वाले सूचना ईमेल में यह जानकारी होती है कि किस फ़ाइल और कोड की किस पंक्ति के कारण समस्या हुई, लेकिन यदि आपको वह ईमेल नहीं मिला तो चिंता न करें।
अपनी WordPress साइट की क्रिटिकल एरर को खोजने और ठीक करने के पाँच तरीके हैं।
1. एरर लॉग जाँचें
पहला तरीका error_log फ़ाइल की जाँच करना है, जिसमें PHP एरर की जानकारी सहेजी जाती है। अपने होस्टिंग अकाउंट पर File Transfer Protocol (FTP) क्लाइंट केFile मैनेजरका उपयोग करें और यहाँ जाएँ:home/[username]/public_html/error_log or home/[username]/path-to-wordpress/error_log.
यह फ़ाइल चार प्रकार की PHP त्रुटियाँ दर्ज करती है – warning, notice, parse और fatal। प्रत्येक लॉग की शुरुआत में आपको मिली त्रुटि का प्रकार दिखाई देगा। यदि आपको parse या fatal एरर मिले, तो उसे ठीक करना होगा।
यदि आपकोerror_log फ़ाइल न मिले, तो हमसे सहायता माँगें। ध्यान रखें कि error_log फ़ाइल तभी उपलब्ध होगी जब आप PHP एरर लॉगिंग चालू करेंगे। ऐसा करने के लिए अपने cPanel से PHP सेटिंग्स कॉन्फ़िगर करें।
यदि आप अब भी एरर लॉग फ़ाइल नहीं देख पा रहे हैं, तो डीबग मोड वाला अगला तरीका आज़माएँ।
2. WordPress को डिबग करें
WordPress में एक बिल्ट-इन डिबगिंग सिस्टम होता है, जो कोर सॉफ़्टवेयर, थीम और प्लगइन में मौजूद कोड की त्रुटियों की पहचान करता है।
WordPress डिबग मोड चालू करने के लिए, अपनी public_html डायरेक्टरी में wp-config.php फ़ाइल खोलें। फिर ये पंक्तियाँ खोजें:
define( 'WP_DEBUG', false ); define( 'WP_DEBUG_DISPLAY', false ); define( 'WP_DEBUG_LOG', false ); define( 'SCRIPT_DEBUG', false );
“false” मान का अर्थ है कि WordPress डिबग मोड बंद है। इसे बदलने के लिए “false” की जगह “true” लिखें और यह सभी पंक्तियों में करें। इन चार पंक्तियों में PHP कॉन्स्टेंट होते हैं। चालू होने पर ये ये कार्य करते हैं:
- WP_DEBUG – WordPress में डिबग मोड चालू करता है।
- WP_DEBUG_DISPLAY – पेजों के HTML में डिबग संदेश दिखाता है।
- WP_DEBUG_LOG – त्रुटि का विवरण debug.log फ़ाइल में सहेजता है।
- SCRIPT_DEBUG – मिनिफ़ाइड संस्करणों की जगह कोर CSS और JavaScript फ़ाइलों के “dev” संस्करण चलाता है।
यदि आपको ये पंक्तियाँ wp-config.php फ़ाइल में न मिलें, तो उन्हें स्क्रिप्ट में जोड़ दें। हर पंक्ति में “true” मान लिखना न भूलें।
डिबग मोड चालू करने के बाद अपनी साइट रीफ़्रेश करें। आपको त्रुटि संदेश के ऊपर विवरण दिखाई देना चाहिए।
निर्देशों के अनुसार समस्या ठीक करें, और आपकी साइट फिर से सामान्य रूप से काम करने लगेगी। समस्या हल होने के बाद मानों को बदलकर डिबग मोड बंद कर दें: “false” लिखें।
3. थीम या प्लगइन के टकराव को हल करें
नीचे दी गई विधि आपकी थीम और प्लगइन में टकराव का पता लगाने में मदद करेगी। सबसे पहले अपनी थीम की जाँच करें। यदि आपके पास WordPress एडमिन एरिया का एक्सेस है, तो सक्रिय थीम को बदलकर Twenty Twenty जैसी किसी डिफ़ॉल्ट थीम पर सेट कर दें।
लेकिन यदि आप एडमिन पैनल में नहीं जा पाते, तो फ़ाइल मैनेजर या FileZilla जैसे FTP क्लाइंट का उपयोग करें और public_html -> wp-content -> themes पर जाएँ। अपनी सक्रिय थीम का फ़ोल्डर ढूँढें और उसका नाम बदलकर youractivetheme-disabled कर दें। वैकल्पिक रूप से, आप डिफ़ॉल्ट थीम पर स्विच करने के लिए टर्मिनल पर निम्नलिखित कमांड चला सकते हैं;
# wp theme activate twentytwentytwo
ऐसा करने के बाद साइट को रीलोड करें। यदि वह सामान्य रूप से खुल जाती है, तो इसका अर्थ है कि कोई थीम टकराव पैदा कर रही है, और आपको थीम के पिछले संस्करण पर लौटना पड़ सकता है या उसकी जगह कोई बिल्कुल नई थीम लेनी पड़ सकती है।
वहीं, यदि त्रुटि बनी रहती है, तो जाँचें कि कहीं आपके प्लगइन में तो कोई समस्या नहीं है। यह प्रक्रिया थीम की जाँच जैसी ही है। यदि आपके पास WordPress एडमिन पैनल का एक्सेस है, तो सभी प्लगइन निष्क्रिय कर दें। यदि आप एडमिन पैनल में नहीं जा पाते, तो फ़ाइल मैनेजर या FTP क्लाइंट का उपयोग करें और यहाँ जाएँ public_html -> wp-content -> plugins। सभी प्लगइन डायरेक्टरी का नाम बदलकर इस प्रकार कर दें plugin-disabled यदि आपने Elementor प्लगइन इंस्टॉल किया हुआ है, तो उसका फ़ोल्डर छोड़ दें।
अपनी साइट को रीफ़्रेश करें। यदि वह सामान्य रूप से खुल जाती है, तो इसका अर्थ है कि कोई प्लगइन टकराव पैदा कर रहा है।
यह ठीक-ठीक पता लगाने के लिए कि किस प्लगइन से त्रुटि हुई, आपको उन्हें एक-एक करके दोबारा सक्रिय करना होगा और हर बार वेब पेज को रीलोड करना होगा। यदि आपने अपने प्लगइन के फ़ोल्डरों के नाम बदले हैं, तो यहाँ जाएँ public_html -> wp-content -> plugins। सभी प्लगइन फ़ोल्डरों को एक-एक करके उनके मूल डायरेक्टरी नामों पर वापस ले आएँ। वैकल्पिक रूप से, किसी प्लगइन को निष्क्रिय करने के लिए आप टर्मिनल पर निम्नलिखित कमांड चला सकते हैं;
# wp plugin deactivate -all
PHP मेमोरी लिमिट बढ़ाएँ
भले ही आपकी वेबसाइट के खराब होने का कारण कोई प्लगइन या थीम हो, अक्सर असली दोषी PHP मेमोरी लिमिट ही होती है।
PHP मेमोरी लिमिट क्या है? आपके वेब सर्वर में केवल एक निश्चित मात्रा में RAM या मेमोरी होती है, इसलिए WordPress यह सीमा तय करता है कि एक PHP स्क्रिप्ट कितनी मेमोरी का उपयोग कर सकती है। यह सीमा पार होने पर आपको व्हाइट स्क्रीन ऑफ डेथ या क्रिटिकल एरर दिखाई देगा।
आप मेमोरी लिमिट को बहुत अधिक नहीं रखना चाहेंगे, क्योंकि इससे गलत कॉन्फ़िगर की गई स्क्रिप्ट आपकी वेबसाइट को बेहद धीमा कर सकती हैं, लेकिन डिफ़ॉल्ट मान बहुत कम भी हो सकता है। PHP लिमिट को थोड़ा बढ़ाने से ही आपकी खराब वेबसाइट तुरंत ठीक हो सकती है।
- चरण 1:FTP के माध्यम से अपनी वेबसाइट खोलें और इसे खोलें:wp-config.php.
- चरण 2: अंतिम पंक्ति से ठीक पहले नीचे दिया गया कोड डालें और सेव करें।
define( 'WP_MEMORY_LIMIT', '128M' );
यदि इससे समस्या ठीक नहीं होती, तो आप 256M भी आज़मा सकते हैं, लेकिन इससे अधिक मान की आवश्यकता बिल्कुल नहीं है, जब तक कि प्लगइन के दस्तावेज़ में विशेष रूप से इसका उल्लेख न हो। यदि समस्या मेमोरी लिमिट की है, तो आपके द्वारा उपयोग किया जा रहा प्लगइन लगभग निश्चित रूप से खराब है और उसे बंद करना आवश्यक है
अधिकतम अपलोड फ़ाइल साइज़ और टेक्स्ट प्रोसेसिंग फ़ंक्शन बढ़ाएं
यदि क्रिटिकल एरर केवल कुछ खास स्थितियों में दिखाई देता है और हर पेज पर लगातार नहीं, तो कुछ PHP फ़ंक्शन में छोटा सा बदलाव इसे ठीक कर सकता है। बड़ी फ़ाइलें अपलोड करते समय एरर स्क्रीन दिखना संभवतः अधिकतम अपलोड फ़ाइल साइज़ बहुत कम होने के कारण होता है, जबकि कुछ बड़े पेज का काम न करना रिकर्शन और बैकट्रैक लिमिट बढ़ाकर ठीक किया जा सकता है।
सबसे पहले, देखें कि आपका अधिकतम अपलोड साइज़ कितना है और उसकी तुलना उस फ़ाइल से करें जिसे आप अपलोड करना चाहते हैं। यह जानकारी आपको यहां जाकर मिल सकती है:मीडिया>नया जोड़ेंऔर फ़ाइल अपलोडर के नीचे देखें।
इनमें से किसी भी समस्या को ठीक करने के लिए आपको FTP में लॉग इन करके इसे एडिट करना होगा:wp-config.phpफ़ाइल में नया कोड अंतिम कमेंट लाइन के ठीक ऊपर डालें।
अधिकतम अपलोड फ़ाइल साइज़ बढ़ाने के लिए यह कोड जोड़ें:
ini_set('upload_max_size' , '256M' );
ini_set('post_max_size','256M');
और अपनी वेबसाइट पर बड़े पेज के काम न करने की समस्या ठीक करने के लिए यह कोड जोड़ें:
ini_set('pcre.recursion_limit',20000000);
ini_set('pcre.backtrack_limit',10000000);
4. बैकअप से वेबसाइट को रीस्टोर करें
इस तरीके में आपको बैकअप से वेबसाइट की फ़ाइलें रीस्टोर करनी होती हैं। ऐसी एरर यही बताती है कि अपनी WordPress वेबसाइट का बैकअप लेना क्यों ज़रूरी है।
5. PHP वर्शन अपग्रेड करें
WordPress के लिए आवश्यक हैPHP 7.4या उससे ऊपर का वर्जन। अपने वेब होस्ट पर PHP वर्जन जांचें, और यदि आप PHP के पुराने वर्जन का उपयोग कर रहे हैं, तो उसे 7.4 या उससे ऊपर के वर्जन में अपग्रेड करने से“आपकी वेबसाइट पर एक गंभीर त्रुटि हुई है”एरर ठीक हो सकता है।
निष्कर्ष
यदि आपको यह संदेश दिखाई दे, तो घबराने की आवश्यकता नहीं है:“आपकी वेबसाइट पर एक गंभीर त्रुटि हुई है” बस अपना ईमेल पता जांचें और WordPress की ओर से आया ईमेल खोजें, ताकि आप समस्या का पता लगाकर उसे जल्दी ठीक कर सकें।
यदि आपको ईमेल प्राप्त न भी हो, तब भी समस्या को हल करने के पांच तरीके उपलब्ध हैं:
- वेबसाइट के एरर लॉग जांचें
- WordPress डिबग मोड का उपयोग करें
- थीम या प्लगइन के संभावित टकराव को हल करें
- बैकअप फ़ाइलों से वेबसाइट को रीस्टोर करें
- वेबसाइट का PHP वर्जन अपग्रेड करें
हम नियमित रूप से बैकअप बनाने की भी सलाह देते हैं। इससे, यदि आपको ऐसा कोई WordPress एरर संदेश दिखाई दे, तो आप अपनी वेबसाइट को जल्दी रीस्टोर कर सकेंगे।
नोट: यदि आपको एक साथ कई WordPress एरर दिख रहे हैं, तो आप इन अन्य एरर के बारे में भी जांच कर सकते हैं:
- ERR_CONNECTION_TIMED_OUT — यह धीमे या ओवरलोड वेब सर्वर के कारण होता है।
- ERR_CACHE_MISS — यदि आपको यह दिखाई दे, तो अपनी वेबसाइट के कैश या प्लगइन जैसे PHP टूल्स की जांच करें, क्योंकि इसका कारण बहुत संभवतः वही होते हैं।
- 500 Internal Server Error — एक गंभीर एरर, जिसका कारण आमतौर पर सर्वर फ़ाइलों का करप्ट होना होता है।
- Error Establishing a Database Connection — आपके डेटाबेस में करप्शन या डेटाबेस सर्वर की कोई समस्या इस परेशानी की root हो सकती है।
- HTTP 503 Service Unavailable — यह आपके सर्वर में किसी समस्या का संकेत देता है।
- HTTP 502 Bad Gateway — यह भी सर्वर की ही समस्या है, जो अक्सर बहुत अधिक विज़िटर्स के कारण सर्वर पर लोड बढ़ जाने से होती है।
और यदि आपको उपरोक्त में से कोई एरर या कोई अन्य अजीब एरर दिखाई दे, तो कृपया एरर के स्क्रीनशॉट के साथ सपोर्ट टिकट बनाएं।
WordPress को दोबारा इंस्टॉल करें
यदि समस्या प्लगइन, थीम या PHP कॉन्फ़िगरेशन में नहीं मिलती, तो WordPress की कोई करप्ट कोर फ़ाइल या मैलवेयर भी WordPress में यह गंभीर त्रुटि पैदा कर सकता है। इसे ठीक करने का सबसे आसान तरीका WordPress को दोबारा इंस्टॉल करना है। WordPress कोर को जबरन दोबारा इंस्टॉल करने के लिए आप टर्मिनल पर निम्नलिखित कमांड चला सकते हैं;
# wp core download --skip-content --force
यदि कुछ भी काम न करे, तो अपनी वेबसाइट के सशुल्क कोड फ़िक्स के लिए हमसे संपर्क करें।
Tell us what you need
Compare available plans or describe your workload so we can discuss a suitable starting point.