.NET 4.0, IIS 7 이상을 사용하여 MVC4 사이트를 만들고 있습니다. 내부 용이므로 Windows 인증을 사용하고 있습니다. ELMAH을 사용하기로 결정했으며 MVC이므로 Elmah.MVC NuGet 패키지를 사용하기로 결정했습니다.ELMAH.MVC가있는 ASP.NET MVC 사이트 - Windows 인증
로깅 예외가 작동합니다. App_Data 폴더에 로그하고 이메일을 보내도록 설정했습니다. 이 두 가지 일 모두 잘됩니다.
하지만 UI를 사용하여 실제로 모든 오류를보고 싶었습니다. 그래서 나는 site.com/elmah를 탐색하고 사이트는 내 자격 증명에 대한 요청으로 팝업합니다. 이것은 Windows 인증을 사용해야하므로 혼란 스럽습니다. 이미 사용자 목록에 있어야합니다. 나머지 응용 프로그램에서는 방문 사용자의 HttpContext.Current.User
을 올바르게 사용하므로 elmah가 올바르게 작동하지 않습니다.
사이트의 응용 프로그램 풀은 NetworkService와로 설정되어 있고 사이트 자체는 통과 인증를 사용하여 연결을 설정합니다.
정확히 무엇이 누락 되었습니까? 모든 사람이 여전히 사용자 이름의 대소 문자 구분을위한 새로운 설정이 패키지 nuget 최신 ELMAH에서 찾고
<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.IgnoreDefaultRoute" value="false" />
<add key="elmah.mvc.allowedRoles" value="*" />
<add key="elmah.mvc.allowedUsers" value="DOMAIN\user1,DOMAIN\user2" />
<add key="elmah.mvc.route" value="elmah" />
구성을 내 web.config에 놓았으며 elmah가 계속 정상적으로 작동합니다. 실험으로 elmah.mvc.route를 성공적으로 액세스하고 어떤 일이 일어나는지를 알 수있는 경로로 설정해보십시오. – Grax
도움을 주신 @Grax thx. 나는 대답을하고/내 자신의 질문을 닫습니다. 그러나 나는 많은 것을 시도한 후에 그 문제를 알아 냈습니다. 'elmah.mvc.allowedUsers'는 실제로는 없어야 할 때 대소 문자를 구분합니다. 나는 GitHub에 변화를 제출할 것이다. 바라건대 그것은 어떤 시점에서 합병되기를 바랍니다. –