Ich habe versucht, elmah mit meiner asp.net-Site zu verwenden, aber wenn ich versuche, zu http: // localhost: port / elmah.axd zu wechseln , wird die Ausnahme "Ressource nicht gefunden" angezeigt . Meine web.config ist unten angegeben.
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false"
type="Elmah.SecuritySectionHandler, Elmah"/>
<section name="errorLog" requirePermission="false"
type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false"
type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false"
type="Elmah.ErrorFilterSectionHandler, Elmah"/>
</sectionGroup>
</configSections>
<elmah>
<security allowRemoteAccess="0" />
<errorLog type="Elmah.SqlErrorLog, Elmah"
connectionStringName="elmah-sql" />
<errorMail
from="my@account"
to="myself"
subject="ERROR From Elmah:"
async="true"
smtpPort="587"
smtpServer="smtp.gmail.com"
userName="my@account"
password="mypassword" />
</elmah>
<connectionStrings>
<add name="elmah-sql" connectionString="data source=(sqlserver);
database=elmahdb;
integrated security=false;User ID=user;Password=password"/>
</connectionStrings>
<system.web>
<compilation debug="true">
<assemblies>
<add assembly="Elmah, Version=1.0.10617.0, Culture=neutral,
PublicKeyToken=null"/>
</assemblies>
</compilation>
<authentication mode="Windows"/>
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false"
type="System.Web.Script.Services.ScriptHandlerFactory,
System.Web.Extensions, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
<add verb="*" path="*_AppService.axd" validate="false"
type="System.Web.Script.Services.ScriptHandlerFactory,
System.Web.Extensions, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
<add verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler,
System.Web.Extensions, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule,
System.Web.Extensions, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
</httpModules>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules runAllManagedModulesForAllRequests="true">
<remove name="ScriptModule"/>
<add name="ScriptModule" preCondition="managedHandler"
type="System.Web.Handlers.ScriptModule,
System.Web.Extensions, Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<remove name="ScriptHandlerFactory"/>
<remove name="ScriptHandlerFactoryAppServices"/>
<remove name="ScriptResource"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx"
preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory,
System.Web.Extensions, Version=3.5.0.0,
Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*"
path="*_AppService.axd" preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory,
System.Web.Extensions, Version=3.5.0.0,
Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode"
verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler,
System.Web.Extensions, Version=3.5.0.0,
Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="Elmah" verb="POST,GET,HEAD" path="elmah.axd"
preCondition="integratedMode"
type="Elmah.ErrorLogPageFactory, Elmah"/>
</handlers>
</system.webServer>
</configuration>
BEARBEITEN: Elmah = (Fehlerprotokollierungsmodule und -handler)
http://code.google.com/p/elmah/
asp.net
exception-handling
elmah
TheVillageIdiot
quelle
quelle
elmah.axd
der IIS hängt , als ich versuchte, darauf zuzugreifen .Antworten:
Versuchen Sie, die Module und Handler in den Abschnitten "httphandlers" und "httpmodules" im
<system.web>
Abschnitt zu registrieren :quelle
Ich hatte gerade ein ähnliches Problem damit, dass Elmah nicht in einer IIS7-Bereitstellung arbeitete. Ich stellte fest, dass ich die Elmah-Module und -Handler in
system.web
AND registrieren musstesystem.webServer
:quelle
<system.web>
soll für IIS6 sein, während<system.webServer>
für IIS7 + per stackoverflow.com/questions/355261/…Möglicherweise benötigen Sie diesen auch
wenn du bekommst
quelle
Diese Zeile fehlte bei der Installation mit NuGet (VS 2013, IIS 8.0):
Durch Hinzufügen wurde das 404-Fehlerproblem behoben.
quelle
Eine Möglichkeit, dies heute zu umgehen, ist die Verwendung von Nuget.
Visual Studio: Menü-> Tools-> Bibliothekspaketmanager-> Paketmanagerkonsole
HTH
quelle
Das Nuget-Paket fügt web.config nicht die folgenden wichtigen Zeilen hinzu, was zu einem 403-Fehler führt.
Möglicherweise möchten Sie auch den Zugriff auf Fehlerprotokolle durch einschränken
quelle
Wenn Sie Bereiche verwenden, stellen Sie sicher, dass Sie einen der Appsetting-Schlüssel aktualisiert haben
Standard
Wenn Sie ein Bereich als Admin sind
quelle