जब कोई विज़िटर 500 त्रुटि पेज हिट करता है, तो क्या वेबमास्टर को एक स्वचालित ईमेल भेजना संभव है?


10

क्या एक स्वचालित ईमेल भेजना संभव है जिसमें वेबमास्टर के लिए अनुरोधित पृष्ठ के बारे में विवरण शामिल है जब कोई आगंतुक 500 आंतरिक सर्वर त्रुटि पृष्ठ हिट करता है?

इस तरह वेब मास्टर समस्या को हल करने के लिए और अधिक तेज़ी से कार्य कर सकता था। यह एक सामान्य प्रश्न है, इसलिए किस प्लेटफॉर्म का उपयोग किया जाता है, यह अप्रासंगिक है।


1
कृपया वेब सर्वर सॉफ़्टवेयर और भाषा को जोड़ें (उपयोग) कर सकते हैं। (Apache, nginx, iis, php, asp) ताकि लोग आपको स्क्रिप्ट के उदाहरण दिखा सकें।
jflaflamme

जवाबों:


7

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

उदाहरण के लिए, अपाचे के लिए, यह वास्तव में सरल है। बस .htaccessअपने कस्टम त्रुटि दस्तावेज़ को सेट करने के लिए इसे बनाएं (या यदि कोई मौजूद है तो जोड़ें) और इसके भीतर निम्नलिखित नियम का उपयोग करें:

ErrorDocument 500 /error-docs/500.php

और अब nginx के लिए? :)
रोज़गारपैक

2
@rogerdpack, error_page
ब्लूबार

7

कस्टम त्रुटि पृष्ठ के माध्यम से हर त्रुटि के साथ एक मेल भेजना, अगर PHP संबंधित समस्या नहीं है तो काम नहीं कर सकता है: आपका कस्टम पेज या तो नहीं चल सकता है इसलिए मेल बाहर नहीं जाता है। इसके अलावा, आपको प्रति त्रुटि एक ईमेल मिलेगी जो बाढ़ हो सकती है।

मैं इसके बजाय लॉग स्कैनिंग के कुछ रूप को लागू करने का सुझाव दूंगा: एक क्रोन नौकरी (या विंडोज के तहत निर्धारित कार्य) हर दिन या हर कुछ घंटों में त्रुटियों के लिए लॉग फ़ाइलों को स्कैन करें और अंतिम व्यवस्थापक से संबंधित किसी भी चीज़ का सारांश संबंधित व्यवस्थापक को भेजें। (रों)। आप अपनी लॉग चेकिंग स्क्रिप्ट भी कर सकते हैं जैसे कि वेब सर्वर सेवा (और किसी भी डेटाबेस सेवा और इसके बाद) चल रही है, अगर केवल व्यामोह के लिए कुछ अन्य चीजें हैं। यदि और कुछ नहीं, प्रति रिपोर्टिंग अवधि में एक ईमेल अन्य HTTP त्रुटि कोड (401, 404, ...) और लॉग में पाई गई अन्य चीजों को कवर कर सकता है। यदि आप ऐसा करते हैं, तो हमेशा ईमेल संदेश भेजें भले ही कुछ भी गलत न हो : इस तरह से आप जानते हैं कि क्या आपकी स्कैनिंग स्क्रिप्ट चलने में विफल रही है क्योंकि आप संदेश प्राप्त करना बंद कर देते हैं (अन्यथा कोई संदेश या तो मतलब नहीं हो सकता है कि सब ठीक है या क्षति रिपोर्ट मशीन क्षतिग्रस्त है)।


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

अपवित्र, मुझे लगता है कि आपका जवाब वास्तव में उत्थान के लायक है। यह व्यावहारिक समाधान है।
ALH

4

हां, हर त्रुटि के लिए एक ईमेल भेजें। ईमेल के हिस्से के रूप में अधिक जानकारी भेजना भी एक अच्छा विचार है। हथियाने के बारे में सोचो:

  • फॉर्म संग्रह की सामग्री,
  • सभी सत्र चर,
  • ब्राउज़र उपयोगकर्ता-एजेंट स्ट्रिंग,
  • कुकी मान,
  • पृष्ठ URL, जिसमें कोई भी क्वेरी पैरामीटर शामिल है।

यह डीबगिंग उद्देश्यों के लिए बहुत मदद करता है। अनुरोध और सत्र ऑब्जेक्ट के माध्यम से क्लासिक ASP और ASP.NET में यह जानकारी प्राप्त करना तुच्छ है।

बस आपके कस्टम त्रुटि पृष्ठ पर कोई त्रुटि नहीं है, या आप वेब सर्वर को फ्रीक कर देंगे।


3

हाँ, बहुत संभव है। ईमेल को छोड़कर, आप वेब सर्वर लॉग की जांच भी कर सकते हैं।

मेरा सुझाव है कि हर एक 500 पर ईमेल न भेजें, नहीं तो बग के कारण आपको मेलबॉक्स भर जाएगा। बस एरर आईडी रिकॉर्ड करें, उसी आईडी पर उसी त्रुटि के लिए 1 भेजें।


मेरा लेना यह है कि जब कुछ गलत हो जाता है तो एक ईमेल को पुनः प्राप्त करना वेब सर्वर लॉग रीजेंटरी के माध्यम से जाने के बजाय वेबमास्टर के जीवन को थोड़ा आसान बनाता है। 1 ईमेल विचार के बारे में अच्छी बात। वोट दें!
टोनी बोलेरो

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

-1

आप एक iframe जोड़ सकते हैं जो अन्य सर्वर से php लोड करता है, फिर आपका त्रुटि पृष्ठ हमेशा मेल भेजेगा।


1
एक iframe क्यों? यकीन नहीं होता कि मैं इसका कारण समझता हूं।
एंड्रयू
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.