Krok 1: Skonfiguruj sekcje konfiguracyjne zawierać ELMAH errorFilter
rozdział:
<configSections>
<sectionGroup name="elmah">
<!-- ... -->
<!-- this is the important part -->
<section name="errorFilter" requirePermission="false"
type="Elmah.ErrorFilterSectionHandler, Elmah"/>
</sectionGroup>
</configSections>
Krok 2: Konfiguracja filtruj się w sekcji <elmah>
.
<elmah>
<!-- ... -->
<errorFilter>
<test>
<and>
<equal binding="HttpStatusCode" value="404" type="Int32" />
<!-- you may want to consider something more generic like pattern="/.+[.]php" -->
<regex binding="Context.Request.Url" pattern="/prx2.php" />
</and>
</test>
</errorFilter>
</elmah>
Krok 3: Dołącz Elmah.ErrorFilterModule
wewnątrz swoich modułów aplikacyjnych
Nowoczesne (IIS7 +) wersja z tym moduł http:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<!-- ... -->
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"
preCondition="managedHandler" />
</modules>
</system.webServer>
Legacy (starszy IIS) w wersji z tym modułem http:
<system.web>
<httpModules>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
</system.web>
Kłopot w tym, że to wszystko albo nic, jeśli chcę to zrobić w pliku konfiguracyjnym, np. ' ' filters ALL 404 –
Rippo
Możesz być bardziej szczegółowy w plikach konfiguracyjnych - zobacz sekcję Używanie JScript tego linku. To pokaże Ci, jak być bardziej szczegółowym i zdefiniować złożone warunki używając składni javascript, takie jak użycie RegEx na adresie URL, aby dopasować określone ścieżki. – saret
+1 Dzięki temu będzie wyglądać, chociaż wygląda to trochę paskudnie! – Rippo