क्या प्रोग्रामर त्रुटि रिपोर्टिंग को चालू या बंद रखते हैं?


12

मैं सोच रहा था कि क्या php प्रोग्रामर वेबसाइट डिलीवर करने के बाद php.ini में error_reporting रखते हैं?

php 

जवाबों:


18

आपको हमेशा त्रुटि रिपोर्टिंग, सबसे महत्वपूर्ण घटनाओं और ऑडिट में लॉग इन करते रहना चाहिए। अन्यथा, जिस दिन आपका आवेदन किसी कारण से विफल हो जाएगा, आपके पास यह पता लगाने का कठिन समय होगा कि क्या हुआ था।

यह कहा जा रहा है, त्रुटि रिपोर्टिंग को आंतरिक रूप से किया जाना चाहिए, और अंतिम उपयोगकर्ता को कभी नहीं दिखाया जाना चाहिए, क्योंकि यह संवेदनशील जानकारी दिखाने के लिए एक सुरक्षा मुद्दा होगा। इसके लिए आप सेटिंग display_errorsऔर log_errorsसेटिंग्स का उपयोग कर सकते हैं : php.ini-productionपहला सेट है off, जबकि दूसरा है on

वैसे, php.ini-productionपहले से ही आपके प्रश्न का उत्तर देता है:

; error_reporting
;   Default Value: E_ALL & ~E_NOTICE
;   Development Value: E_ALL | E_STRICT
;   Production Value: E_ALL & ~E_DEPRECATED

एक अन्य टिप्पणी यह ​​भी बताती है कि:

डिफ़ॉल्ट रूप से, PHP उन सभी त्रुटियों, नोटिसों और चेतावनियों पर कार्रवाई करने के लिए तैयार है जो E_NOTICE और E_STRICT से संबंधित हैं, जो एक साथ सर्वोत्तम प्रथाओं को कवर करते हैं और PHP में कोडिंग मानकों की सिफारिश करते हैं। प्रदर्शन कारणों के लिए, यह अनुशंसा की गई त्रुटि रिपोर्टिंग सेटिंग है। आपके उत्पादन सर्वर को संसाधनों को बर्बाद नहीं करना चाहिए जो सर्वोत्तम प्रथाओं और कोडिंग मानकों के बारे में शिकायत करते हैं।


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

यदि कोई डेवलपर error_reportingउत्पादन बंद कर देता है, तो उसके पास छिपाने की संभावना है।
लेकेनस्टाइन

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

@FahadUddin आप त्रुटियों को देखने के लिए अपनी वेबसाइट / एप्लिकेशन के दर्शकों को नहीं चाहते हैं। केवल एक चीज जिसे हम प्रतिबंधित करते हैं, अंतिम उपयोगकर्ता के लिए त्रुटियों का प्रदर्शन है, लॉगिंग बाकी की देखभाल करता है। हालांकि, अच्छा अभ्यास यह दर्शाता है कि एक आवेदन स्तर की त्रुटि (उदाहरण के लिए खराब डीबी कनेक्शन) की स्थिति में, हम अंत उपयोगकर्ता को सूचित करते हैं कि कुछ गलत हो गया और बैकएंड पर डेवलपर्स को तुरंत सतर्क कर दिया।
इयान लुईस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.