2012-12-07 24 views
29

NuGet'i kullanarak Elmah for MVC'u yükledim, db'deki başarı hatası ile oturum açabiliyorum. Tek sorun, Hata Günlüğü Sayfasına erişmek için /elmah URL'ye erişemem.ELMAH - MVC 3 - 403 - Yasak: Erişim reddedildi

Yapılandırmamın bir kısmı, herhangi bir yanlış yapılandırma yapıp yapmadığımı belirtir misiniz?

Teşekkür

HATA

403 - Yasak: erişim engellendi.
Bu dizini veya sağladığınız kimlik bilgilerini kullanarak sayfayı görüntüleme izniniz yok. Gelen

benim 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> 

global.asax yılında:

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

nasıl kimlik doğrulama ve yetkilendirme başa çıkıyorsun? – jrummell

cevap

44

(Bu başlarken/belgelerinden hepsi)

Aşağıdaki gerekmez satır:

routes.IgnoreRoute("elmah.axd"); 

Sonraki satır bununla ilgilenir.

Yapılandırmanız gereken her şey, web.config dosyanızın. Bir şey gibi:

+0

Teşekkürler, MVC kullanıyorum kullanmam gerektiğinden emin misiniz? Teşekkürler – GibboK

+9

Emlah güncellendi ve eski bir yapılandırma kullanıyorum ÇOK olası. Bence önemli olan 'allowRemoteAccess' olduğunu ve jrummell’in belirttiğine emin olmanızı sağladığını düşünüyorum. –

+3

MVC için appSettings'i gibi girişlerle kullanacaksınız. Bu NuGet'i yükleyin ve yapılandırmanızı uygun şekilde değiştirir: https://www.nuget.org/packages/Elmah.MVC – kape123

22

Sadece aynı sorunla karşılaşan biri varsa.

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

konu emoteAccess r, bu küçük harflerle, olmalıydı üst böyleydi izin içinde r oldu:

Bu yanlış benim kod, oldu!

Doğru kodu:

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

'u kullanıyorum Ağrınızı hissediyorum. – Donnelle

+1

Büyük yardım, , thx ile sorunumu çözüyorum. –

+2

İyi cevap! Elmah.MVC, gerekli yapılandırmanın çoğunu web.config dosyasına eklerken, bu satır eksik. –