2012-12-07 8 views
29

Ho installato Elmah for MVC utilizzando NuGet, sono in grado di accedere con errore di successo nel db. L'unico problema è che non riesco ad accedere all'URL /elmah per accedere alla pagina del registro degli errori.ELMAH - MVC 3 - 403 - Accesso negato: accesso negato

Qui parte della mia configurazione, potresti indicare se ho qualche errore di configurazione?

Grazie

ERRORE

403 - Forbidden: Accesso negato.
Non si dispone dell'autorizzazione per visualizzare questa directory o pagina utilizzando le credenziali fornite.

Nel mio web.config:

<appSettings> 
    <add key="webpages:Version" value="1.0.0.0" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
    <add key="elmah.mvc.disableHandler" value="false" /> 
    <add key="elmah.mvc.disableHandleErrorFilter" value="false" /> 
    <add key="elmah.mvc.requiresAuthentication" value="true" /> 
    <add key="elmah.mvc.allowedRoles" value="Administrator" /> 
    <add key="elmah.mvc.route" value="elmah" /> 
    </appSettings> 

In global.asax:

public static void RegisterRoutes(RouteCollection routes) 
    { 
     routes.IgnoreRoute("elmah.axd"); 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
     ); 
    } 
+0

Come sono di manovrare l'autenticazione e l'autorizzazione? – jrummell

risposta

44

(Questo è tutto dalla documentazione/guida introduttiva)

che non è necessario il seguente riga:

routes.IgnoreRoute("elmah.axd"); 

La riga successiva si prende cura di esso.

Tutto ciò che devi configurare è nel tuo file web.config. Qualcosa di simile:

Dovresti farti andare.

+0

Grazie, sto usando MVC sei sicuro che dovrei usare ? Grazie – GibboK

+9

È MOLTO possibile che Emlah sia stato aggiornato e sto usando una vecchia configurazione. Penso che la parte importante sia il 'allowRemoteAccess' e che tu sia autenticato come notato da jrummell. –

+3

Per MVC utilizzerai appSettings con voci come . Installa questo NuGet e modificherà opportunamente la tua configurazione: https://www.nuget.org/packages/Elmah.MVC – kape123

22

Nel caso in cui qualcuno incontri lo stesso problema che ho avuto.

Questo è stato il mio codice, che è sbagliato:

<elmah> 
    <security allowremoteAccess="true" /> 
</elmah> 

Il problema era il r a consentire r emoteAccess, era in minuscolo, maiuscolo, quando avrebbe dovuto essere!

codice corretto:

<elmah> 
    <security allowRemoteAccess="true" /> 
</elmah> 
+4

Sento il tuo dolore. – Donnelle

+1

Ottimo aiuto, risolvo il mio problema con , thx. –

+2

Buona risposta! Mentre Elmah.MVC aggiunge la maggior parte della configurazione necessaria a web.config, questa riga è mancante. –