में ब्लॉक 404 FavIco त्रुटि मैं बॉक्स कि ELMAH लॉग 404 अपने स्थानीय सर्वर पर favico के लिए नहीं मिला से बाहर देखा। मैं फ़िल्टर के माध्यम से इस त्रुटि को कैसे दबा सकता हूं? मैं अभी तक यह configurating के साथ इतना परिचित नहीं हूँ ..ELMAh
ELMAh
उत्तर
आधिकारिक elmah Error Filtering page तरीके इस 404 फ़ेविकॉन त्रुटि दबा जा सकता है की एक संख्या बताते हैं।
आप सभी 404 त्रुटियों को वेब.config में घोषित रूप से फ़िल्टर कर सकते हैं। मैं कुछ नहीं कर रहा हूँ वहाँ एक रास्ता केवल एक फ़ेविकॉन के लिए 404 को दबाने के लिए, हालांकि है।
<errorFilter>
<test>
<equal binding="HttpStatusCode" value="404" type="Int32" />
</test>
</errorFilter>
आप इसे प्रोग्राम के रूप में करना चाहता था, तो आप Errorlog या ErrorEmail छानने की घटनाओं में त्रुटि के रूप में आधिकारिक डॉक्स में विस्तार से बताया खारिज कर सकता है। नीचे दिए गए कोड को थोड़ा overkill है, लेकिन यह दर्शाता है कि कैसे आप एक /favicon.ico अनुरोध के लिए केवल 404 त्रुटियों को फ़िल्टर कर सकते हैं।
void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs e)
{
if (((HttpException)e.Exception.GetBaseException()).GetHttpCode() == 404
&& ((HttpContext)e.Context).Request.Path == "/favicon.ico")
{
e.Dismiss();
}
}
मैं व्यक्तिगत रूप से web.config के माध्यम से सभी 404 एलान के तौर पर या तो फिल्टर करने के लिए पसंद करते हैं, या सिर्फ योएल पता चलता है की तरह एक फ़ेविकॉन प्रदान करते हैं।
यह मदद नहीं करता है आप ELMAH को कॉन्फ़िगर कैसे करें, लेकिन के लिए एक फ़ेविकॉन एक प्रदान करना है अनुरोधों के लिए एक 404 को रोकने के लिए सबसे आसान तरीका है ...
सीखनामैं सिर्फ Elmah को विन्यस्त बजाय मार्ग ध्यान न दें। यह मेरे लिए काम करता है:
routes.IgnoreRoute("{*favicon}", new {[email protected]"(.*/)?favicon.ico(/.*)?"});
क्या आप वाकई इसे ELMAH के साथ जांच चुके हैं? मार्ग को अनदेखा करना काम नहीं करता है। यह सिर्फ एमवीसी द्वारा अनुरोध को अनदेखा करने का कारण बनता है और नियमित एएसपी.नेट पाइपलाइन पर जाता है जो 404s है, जो ईएलएमएएच में लॉग इन होने का कारण बनता है। –
थोड़ा समय के बाद से मुझे लगता है कि कोड को देखा गया है, तो मैं दोबारा जांच करने की जरूरत है, लेकिन मैं एक जीवित साइट पर तकनीक का इस्तेमाल किया और यह मेरे लिए काम करने के लिए दिखाई दिया। क्या यह आईआईएस 6 और आईआईएस 7 के बीच एक अंतर है? – Junto
चाहे आपको इसकी आवश्यकता हो या नहीं, सर्वर कॉन्फ़िगरेशन पर निर्भर करता है। कैसिनी (विजुअल स्टूडियो डीबगिंग) के लिए, उन 404 एल्मा द्वारा लॉग इन हो जाते हैं। आईआईएस 6 के लिए, एल्मा उन्हें नहीं देखता है अगर उन्हें रूटिंग द्वारा अनदेखा किया जाता है। मैं आईआईएस 7. –
मैं ऊपर कर्ट स्किंडलर के प्रोग्रामेटिक समाधान (बनाम कॉन्फ़िगरेशन) का उपयोग कर रहा था; हालांकि, मैंने देखा है कि गैर HttpExceptions ErrorLog_Filtering ईवेंट हैंडलर में दो बार फेंका हो रहे थे। इससे बचने के लिए, सुनिश्चित करें कि आप GetBaseException विधि पर एक प्रकार-चेक करें। यहां स्निपेट
void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs e)
{
if (e.Exception.GetBaseException() is HttpException)
{
if (((HttpException)e.Exception.GetBaseException()).GetHttpCode() == 404
&& ((HttpContext)e.Context).Request.Path == "/favicon.ico")
{
e.Dismiss();
}
}
}
कुछ भी नया नहीं है, अगर आप कुछ अजीब व्यवहार देखते हैं तो केवल एक FYI।
धन्यवाद ...
यह है कि मेरी वेब अनुप्रयोग एक फ़ेविकॉन अनुरोध कर रहा है नहीं है, यह है कि जब मैं elmah.axd पृष्ठ पर ब्राउज़, ब्राउज़र एक फ़ेविकॉन का अनुरोध करता है।
माना जाता है, यह काम करना चाहिए:
<elmah>
<errorFilter>
<test>
<and>
<equal binding="HttpStatusCode"
value="404" type="Int32" />
<regex binding="Context.Request.ServerVariables['URL']"
pattern="/favicon\.ico(\z|\?)" />
</and>
</test>
</errorFilter>
</elmah>
लेकिन लगता है क्या, यह नहीं है।
मुझे काम करने के लिए एकमात्र तरीका है मेरी वेब रूट में favicon.ico जोड़ने के लिए। यह मेरी साइट के लिए नहीं है, यह केवल elmah.axd पृष्ठ के लिए है। मार्ग पर कॉल करने की आवश्यकता नहीं है। अनदेखा करें।
यहाँ मेरी फ़ेविकॉन साथ elmah.axd है, और कोई त्रुटि:
अरे मैट, आप सुनिश्चित करें कि आप दोनों HttpModule और अपनी ErrorFilter रजिस्टर बनाने की जरूरत है system.web सर्वर मॉड्यूल - और त्रुटि लॉग इन हैंडलर (या कोई अन्य लॉगिंग मॉड्यूल) के बाद उन्हें पंजीकृत होने की आवश्यकता है - यह एक रिवर्स स्टैक है, प्राथमिकता के अनुसार। –
@ मैट एनराइट अच्छी टिप्पणी। – Kuncevic
मैं नीचे दिए गए कोड का उपयोग करके त्रुटि को अनदेखा करने ELMAH प्राप्त करने में सक्षम था। आप संभावित रूप से किसी भी अन्य पथ को जोड़ सकते हैं जिसे आप अनदेखा करना चाहते हैं। तकनीकी रूप से ये अलग-अलग परीक्षण हो सकते हैं लेकिन ऑफ मौके पर मैं अपने ऐप से संबंधित भविष्य में अन्य 404 त्रुटियों को अनदेखा करना चाहता हूं, मुझे लगा कि मैं इन समूहों को एक साथ छोड़ दूंगा क्योंकि वे मेरे आवेदन पर निर्भर नहीं हैं और यहां पूरी तरह से हैं मेरी त्रुटि लॉगिंग से अव्यवस्था को हटाने के लिए।
<errorFilter>
<test>
<or>
<and>
<equal binding="HttpStatusCode" value="404" type="Int32" />
<equal binding="Context.Request.Path" value="/favicon.ico" type="string" />
</and>
<and>
<equal binding="HttpStatusCode" value="404" type="Int32" />
<equal binding="Context.Request.Path" value="/robots.txt" type="string" />
</and>
</or>
</test>
</errorFilter>
बेशक
अगर आप इस अपने web.config को अव्यवस्थित आप हमेशा एक समर्पित फाइल करने के लिए बाहर फिल्टर विभाजित सकता है के बारे में चिंतित हैं।
<elmah>
<security allowRemoteAccess="1" />
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="elmah-sqlserver" />
<errorFilter configSource="elmahFilters.config" />
</elmah>
- 1. Elmah
- 2. ELMAH
- 3. elmah
- 4. तत्व 'elmah'
- 5. ELMAH के लॉग
- 6. Elmah अपवाद लॉगिंग नहीं
- 7. Elmah Raise (e)
- 8. Autorun ELMAH डेटाबेस स्क्रिप्ट
- 9. ELMAH - फ़िल्टरिंग 404 त्रुटियां
- 10. FogBugz और ELMAH - संचार प्लगइन
- 11. ELMAH एक थीमाधारित पृष्ठ त्रुटि
- 12. कई अनुप्रयोगों के साथ ELMAH
- 13. elmah: HttpContext के बिना अपवाद?
- 14. कंसोल अनुप्रयोग में ELMAH का उपयोग
- 15. ELMAH लॉग से "Auth_Password" को कैसे हटाएं
- 16. कॉन्फ़िगर ELMAH: अपरिचित config अनुभाग त्रुटि
- 17. वीएस 2008008 वेब परिनियोजन प्रोजेक्ट अनुभाग प्रतिस्थापन Elmah
- 18. ASP.NET MVC - Elmah काम नहीं कर रहा और elmah.axd
- 19. ELMAH MVC 2 - के साथ जारी करना कैसल विंडसर
- 20. डीबग/ट्रेस MVC आवेदन में ELMAH का उपयोग कर संदेशों
- 21. web.config का कौन सा हिस्सा मैं elmah टैग डालता हूं?
- 22. ELMAH applicationName: किसी अन्य साइट द्वारा लॉग अप अपवाद दिखाएं
- 23. मैं ELMAH SQL सर्वर डेटाबेस कैसे बना सकता हूं?
- 24. क्या .NET 4 के लिए ELMAH का कोई संस्करण है?
- 25. एल्मा एमवीसी के साथ उत्पादन सर्वर पर/elmah तक नहीं पहुंच सकता है?
- 26. कस्टम त्रुटियां सक्षम होने पर Elmah ट्रिगर नहीं कर रहा है
- 27. मैं प्रोग्रामिंग के रूप में ELMAH को कैसे कॉन्फ़िगर कर सकता हूं?
- 28. क्या किसी SharePoint वातावरण में ELMAH का उपयोग करना संभव है?
- 29. ELMAH - एमवीसी 3 - 403 - निषिद्ध: एक्सेस अस्वीकार कर दिया गया है
- 30. मैं स्थानीय अनुरोधों के लिए ईमेल हैंडलर का उपयोग करने से elmah को कैसे रोकूं?
यह काम करेगा, लेकिन मैं * सभी * 404 त्रुटियों को फ़िल्टर करने की अनुशंसा नहीं करता। यह ईल्माह की शक्ति को सीमित करने का एक प्रकार है। मैं जोएल के दृष्टिकोण के पक्ष में अधिक हूं जहां आप वास्तव में समस्या को ठीक करते हैं। – senfo
लोएल! मैं बस चला गया .. ओह हाँ मैं सिर्फ वास्तव में एक फ़ेविकॉन जोड़ सकते हैं! – gideon